目前,在进程中周期性地启动低优先级的擦除任务。有时,由于锁争用,此低优先级任务可能会干扰其他高优先级任务。我喜欢在进程中的其他线程空闲(阻塞等待锁定/未运行状态)时,机会主义地运行这种低优先级任务。我知道一旦启动了这样的低优先级任务,其他高优先级任务很快就可以开始运行,但是如果进程中的其他线程已经很忙,我会避免运行这种低优先级任务。
发布于 2013-12-01 11:52:55
一种简单的方法是跟踪有多少线程正在等待任务,如果至少有许多等待线程,并且如果t时间内没有运行擦除,则运行擦除任务。
https://stackoverflow.com/questions/20308436
复制相似问题