首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java:线程中的‘`while (true) {.}’循环不好吗?还有别的选择吗?

Java:线程中的‘`while (true) {.}’循环不好吗?还有别的选择吗?
EN

Stack Overflow用户
提问于 2010-07-29 21:43:57
回答 11查看 55.8K关注 0票数 28

线程中的while (true) { ... }循环不好吗?还有别的选择吗?

更新;我想要的是.

我有10,000个线程,每个线程都使用来自它们的私有队列的消息。我有一个线程,它一个接一个地生成消息,并将它们放到正确的消费者队列中。每个使用者线程无限期地循环,检查消息是否出现在队列中并进行处理。

在Consumer.java内部:

代码语言:javascript
运行
复制
@Override
public void run() {
    while (true) {
        Message msg = messageQueue.poll();
        if (msg != null) {
            ... // do something with the message
        }
    }
}

生产者正在以快速的速度将消息放入消费者消息队列(每秒数百万条消息)。消费者应该尽可能快地处理这些信息!

注意:while (true) { ... }被生产者发送的一条杀死消息作为最后一条消息终止。然而,我的问题是如何正确地传递信息.

请参阅 新问题,关于此设计。

EN

Stack Overflow用户

发布于 2010-07-29 21:48:34

代码语言:javascript
运行
复制
while (!stop_running) { ... }

...perhaps?通常使用某种类型的退出标志来控制线程的运行。

票数 9
EN
查看全部 11 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3367192

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档