求答案 !!!!搞不定了 help

有500个号码N台设备使用,每台设备每个号使用30分钟要切换之下一个未被使用的号码,没有号码则等待至有号码可以使用!!!!求java代码实现

思路
1.线程锁 锁定 500个号码
2.开多个 线程去占用 单个号码,并从线程锁中移除,并每个线程停用30分钟,然后读取线程锁中的下一个号码。
直至读完为止