我正在用Java编程。我有一个作业池(BlockingQueue
),一些线程将监视此池。当有新工作时,线程将尝试接受这项工作。该作业执行一些任务,因此我不希望操作系统在此作业尚未完成时将CPU用于其他线程。这意味着我希望我的工作是一项原子工作。
答案 0 :(得分:4)
我不认为这是可能的。您无法从Java代码更改操作系统级别的CPU调度。你可以做的最好ia给你的线程高度优先。但退后一分钟。把它变成ATOMIC你想要什么? Java提供同步以确保当一个线程在其中时,另一个线程不会进入某个代码块。