关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。
昨天关门了。
改进这个问题
我目前在java应用程序中有一个队列。此队列包含要上载到elasticsearch的请求。
如果满足以下两个条件,我想清空队列并上载:
队列>5000请求
或
自从上次上传以来,它已经有x个时间了
此任务需要在自己的线程中运行。
我不知道怎样才能做到最好。javaspring通常的工作方式(2)是通过基于时间间隔安排的任务。但这排除了1),因为我想在队列大小超过5000的任何时候上传,这需要我的应用程序不断检查是否超过大小限制。
我只是有两个单独的线程,每个条件1?或者我使用一个条件变量,只是“手动”计算自上次执行以来的时间,以确定是否应该在一个线程内上载。有没有更好的办法?
暂无答案!
目前还没有任何答案,快来回答吧!