busy-loop

    1热度

    1回答

    我正在做模拟项目,其中有数百个CPU绑定作业运行10到50毫秒。作业是一个Runnable对象,具有指定的运行时间,作业将使CPU保持忙碌状态。线程池中有10个线程正在等待工作到达。我将请求速率设置为每秒40个请求,并将所有作业运行时间设置为10ms。但结果非常糟糕。所有作业运行至少15ms。没有工作运行10毫秒。我用15ms的工作测试了实验,并得到了正确的结果。为什么10ms作业至少运行15ms

    7热度

    2回答

    我用非常标准的Threading.Event: 主线程获取到一个点,它在运行一个循环: event.wait(60) 其他块上直到一个答复的要求可再启动: event.set() 我希望主线程,选择40秒,但这种情况并非如此。 从Python 2.7源库/ threading.py: # Balancing act: We can't afford a pure busy loop, so

    3热度

    5回答

    我正在寻找一种方法来摆脱闲置代码中的主机线程中的忙碌等待(不要复制该代码,它只会显示我的问题,它有很多想法基本的错误): cudaStream_t steams[S_N]; for (int i = 0; i < S_N; i++) { cudaStreamCreate(streams[i]); } int sid = 0; for (int d = 0; d < DATA_SI

    1热度

    1回答

    我正在实施一些使用升压asio操作, 我遇到了一个接口问题,我没有收到'处理程序'初始化,但之后, 这迫使我写一个'忙'循环,我想要做的就是让io_service运行,即使没有至少一个处理程序,是否有可能?处理这个问题的方法是什么?请在服务器上等待处理程序? 这是我的代码.. /** : */ void Run () { while(true) {m_srv.run(); Sl

    0热度

    1回答

    我正在尝试使用Qt Creator编写我的第一个Linux应用程序。有时,在调试过程中,我正在编写导致我的应用程序进入某种无限循环的代码。 这会导致我的KDE会话冻结。使用调试器或任何其他方式来停止/暂停进程似乎是不可能的。几分钟后,桌面会话自动终止,从而阻止重新启动整个PC。 那么,如何调试在Linux下疯狂的进程呢?为什么它会阻止整个桌面和Qt Creator IDE,我怎样才能防止这种情况发

    6热度

    6回答

    为什么写下面这段代码被认为是不好的做法,这是什么原因? while (someList.isEmpty()) { try { Thread.currentThread().sleep(100); } catch (Exception e) {} } // Do something to the list as soon as some