busy-waiting

    2热度

    1回答

    我已经浏览了lua-users Sleep Function以努力找到一个非繁忙的等待睡眠问题的解决方案,我对他们中的任何人都不满意。尽管如此,我试图用几个在使用尾调用的函数的末尾提供延迟。 通常我不会使用尾部呼叫,但由于lua没有为尾部呼叫留下堆栈,所以适合我。 不幸的是,我看到我的处理器峰值约20%的使用,并且程序一旦开始就没有任何输出冲洗,就立即无响应。 问题(简体)看起来是这样的: fun

    1热度

    2回答

    我需要一个C程序来执行一个精确的CPU秒数作为参数传入。我需要这样的程序来测试监视进程CPU使用率的代码。 实施例: busywait x 如果x秒我的处理器上运行。

    0热度

    3回答

    我目前正在研究信号量和互斥实际如何工作,并遇到以下问题。 我们假设我们在CPU上有两个内核。我们有两个进程,每个核心都运行一个进程。现在我们正在呼吁两个内核的wait()调用,因为我们希望进入一个关键部分:如果两个内核并行执行代码 wait(){ while(s.value <= 0) // busy waiting s.value--; } ,初始信号值是1,

    0热度

    1回答

    我想用2个标志来实现一个繁忙的等待机制。我得到了一个僵局,但只是无法理解为什么...它看起来好像它应该工作... 对于长代码抱歉,这是我成功做到的最短代码。 package pckg1; public class MainClass { public static void main(String[] args) { Buffer b = new Buffer(); P

    1热度

    4回答

    我已经写了类以继续开始JAVA应用,如果当前第二个是5(即Calender.SECOND%5 == 0)的倍数 的类代码是如下所示,我很好奇的是,我是否以正确的方式做这件事?它看起来不是一个优雅的解决方案,阻止像这样的执行并反复得到实例。 public class Synchronizer{ private static Calendar c; public static v

    1热度

    1回答

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

    0热度

    1回答

    我有一个线程下面的代码在我的应用程序: while (true) { if (ready) { progressIndicatorController.value++; return; } } 就绪变量从委托方法改变。当我通过点击Xcode工具栏中的“运行”按钮打开应用程序时,此代码很有用。但是,如果我打开该应用程序的.app(我通过单击产品>存档

    2热度

    1回答

    我正在使用读取来电电话状态的android应用程序。我已经成功捕获了振铃,摘机和闲置状态。但问题是我需要获得来电的呼叫等待状态新。 当我试图赶上新呼叫的状态它总是给予相同的状态OFFHOOK为回答和挂断。 有什么办法来区分这种情况。 public class CustomPhoneStateListener extends PhoneStateListener { private s

    0热度

    1回答

    我正在使用共享内存的信号量用于多生产者和多客户端之间的通信。我的系统中有两种主要的信号量,它们是“存储信号量”和“处理信号量”。 系统运行如下:生产者连续地将数据放入共享内存中,然后增加存储的信号量的值,同时消费者在循环中,等待这样存储的信号量。消费者在收到生产者的数据后,将处理这些数据,然后提高处理过的信号量的价值。 for(int i =0;i<nloop;i++){ usleep(

    0热度

    2回答

    我有以下线,对于队列q是空的大部分时间阻止: def run(self): while True: if not self.exit_flag: items = self.q.get() q.work_it() else: return 0 如果出口标志设置,它不是可能立即退出,因为它可能是目前阻挡在 items =