具体场景如下:
对方提供多个计算服务器供我来调用,计算服务器只能同时计算2个任务。
现在我需要将计算服务器做成可以配置的,然后将任务排队。根据先进先出的原则。
如果所有服务器都在计算任务了。剩下的任务就需要排队了。而计算完成后,在去任务池中取任务。直到任务池的所有任务都处理玩了。
使用JDK的线程池【Executors#newFixedThreadPool(2) 】,同时并行两个任务,其他的都在等待(无限队列),
并行任务中1个实行完毕,自动从队列中取一个执行。
可以靠用NIO实习实现,ServerSocketChannel
省事的话直接用common-pool。能用就成,错了来一个
描述的不是很清楚,你是不是要做一个可配置化的队列