在C#线程中,怎样降低CPU的使用率 比如说,在程序中有一个线程始终在监视数据库中数据的变化,当有新的数据写入数据库时,这个线程立即通知我有新的数据写入数据库。我在这个线程中使用了while(true){}的死循环来监视数据库中数据的变化,这样做CPU的使用率就是100%。怎样做,在没有新的数据写入数据库之前,该线程不占用CPU的使用率? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 自己写个事件,然后订阅。在事件中使用ManualResetEvent来控制线程的运行状态。private ManualResetEvent mre = new ManualResetEvent(false);在主线程中mre.Reset();监测线程mre.WaitOne();事件线程sendDone.Set(); while(true){//...监控代码Thread.Sleep(1000); //暂停一秒} 如何判断按钮被点击 请教个菜鸟问题 在类中更新窗体上的控件 如何同时 设置多个textbox的只读属性? DataGridView与图片显示问题 C/S客户端访问DB2需要安装什么吗? 怪事winform的程序如果一访问SQL就会自动关闭 用代码来设置本机DCOM,难道都没搞过?? 关于父窗体子窗体的问题 简单提问一下 网络编程~~我要在一个windows application中与一个远程的套接字连接多次 一个关于443端口的问题 奇怪的xmlhttp40通过代理认证的问题
private ManualResetEvent mre = new ManualResetEvent(false);
在主线程中
mre.Reset();
监测线程
mre.WaitOne();
事件线程
sendDone.Set();
{
//...监控代码
Thread.Sleep(1000); //暂停一秒
}