我正在用 Java 编程。我有一个作业池( BlockingQueue
),并且一些线程将监视该池。当有新的工作出现时,线程会尝试接手这个工作。该作业执行一些任务,因此我不希望操作系统在该作业尚未完成时将 CPU 用于其他线程。这意味着我希望我的工作是一项原子工作。
最佳答案
我认为这是不可能的。您无法从 Java 代码更改操作系统级别的 CPU 调度。你能做的最好的事情就是给你的线程以高优先级。但退后一步。通过使其原子化你想要什么? Java 提供同步来确保当一个线程在某个代码块中时,另一个线程不会进入该代码块。
关于java - 如何用Java编写原子函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12738691/