为什么一个进程仅启动一条线程运行一周才用三秒,运行26条这样线程时,运行一周用时却会达到100多秒?这样用线程有什么优势? 本人用delphi7做的程序,启动26条线程去扫描26口串口,原来想可以加快扫描速度,结果却出现相差很大的结果.我现在往串口写数据后,用的SLEEP函数等待,才出读串口.失望呀. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 建议lz先理解一下线程的运作原理,单cpu情况下,多线程是一定不如单线程快的。如果仅仅是扫描,毫无疑问,在单cpu下,单线程是最快的。由于串口通讯有其特殊性,每个线程都有等待时间,这样算下来,多线程不一定比单线程慢。 楼上,照你说这样才好的单核CPU也最好用单线程,这些事情单片机就行了. 楼主误会二楼的意思了。多线程的出现并不是为了提高系统运行的效率,而主要是为了解决多用户多任务在操作系统中遇到的难题。从原理上讲,多线程不过是CPU的分时运行,由原来的一个CPU运行一个任务,到现在的一个CPU运行多个任务,从整体上看,单个任务的处理时间因为其它任务的分时而增加了,所以说效率反倒下降了。多线程的真正好处,在于多用户多任务可以同时运行而互不干扰。楼主说得对,单片机在处理单任务方面,得确让现在的操作系统愧不敢当~ 如果设置OpenDialog的按钮名称? 高分求教:代码如何改,才可以使进度条正常显示,另外,拷贝文件也可以正常 delphi 编程断开网络 ClientDataSet和DataSetProvider动态创建问题~!请高手指教~! 急救!!急救!!关于dbgrid的记录,用232串口录入的方法!(结贴送分) 各位大哥:请问一个Delphi工程中各个文件的意义 你有没注意到TStringGrid 中虚拟方法SelectCell与她祖先不同!请指点! 怎样制作透明的Panel 如何跳过用户名和密码的输入框 我想把两个控件捆绑使用,该怎么办????? 如何在dbgrid设定固定列且像stringgrid那样的突出显示 关于调用DLL显示系统信息的问题
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货