C# 开启一个线程 定时执行函数,刷新列表listview
我本来是用的Timer,每隔1s刷新一次Listview。结果发现CPU占用了7%左右。无奈发现网上有人说,用Thread既可以解决定时的问题,还可以降低CPU利用。于是...
我本来是用的Timer,每隔1s刷新一次Listview。结果发现CPU占用了7%左右。无奈发现网上有人说,用Thread既可以解决定时的问题,还可以降低CPU利用。
于是按照下面写,结果不允许访问。
请教大师指点,谢谢! 展开
于是按照下面写,结果不允许访问。
请教大师指点,谢谢! 展开
1个回答
展开全部
这是因为.net 2.0以后加强了安全机制,不允许在winform中直接跨线程访问控件的属性,可以在Form_Load()方法中加一句代码: Control.CheckForIllegalCrossThreadCalls = false;
追问
哦,谢谢。可以运行了。但是现在CPU占用20%,比之前还要高。。。我看同花顺之类的软件,他们也是定时刷新数据,但是cpu一般都在1%以内。怎么做的
追答
这个你要看一下你的代码了,找找是哪个地方,做了什么操作导致CPU占用增高的,估计你这不是单纯的做刷新操作吧,仅刷新的话占不了多少CPU的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询