十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
不管单线程 还是多线程,都是CPU执行,而 CPU一个核只能执行一个线程。
创新互联建站是一家以网站建设公司、网页设计、品牌设计、软件运维、网站推广、小程序App开发等移动开发为一体互联网公司。已累计为自上料搅拌车等众行业中小客户提供优质的互联网建站和软件开发服务。
也就是说,如果电脑是多核CPU可能多线程快, 如果是单核,那么就是单线程快
这里的快事 CPU满负荷运行, 如要是处理网络任务 ,需要延时等待 ,多线程跟好
VB虽然支持多线程,但是VB没有提供对多线程的同步机制。
如果你了解多线程的话,应该知道线程间如果没有同步机制的话,很容易崩溃的,而且MICROSOFT已经公布了VB不在多线程上进行升级了,也就是说Microsoft在退出VB.net以后已经不可能再理会VB了,所以说,如果你真的需要使用多线程的话,强烈建议你换DELPHI或者VC
千万不要再尝试用VB做多线程了,只会浪费时间,而且VB操作内存是间接读写,非常慢,所以如果你要写对效率要求高的软件就不要用VB了。
关于串口通讯的问题:
很明显,你还不知道(不会、不习惯)使用事件驱动的方式接收数据。
建议你仔细看看串口组件(无论VB6还是VB.net)的OnComm事件,你的问题很容易解决。
关于以太网通讯:
在TCP通讯中端口确实可以重用,你百度一下“TCP端口重用”能查到很多示例。
但绝大多数情况下不推荐端口重用,而应该采取服务器端建立连接池的方法。
或者,干脆不用TCP,用UDP解决也可以。
Dim p As New Process
p.StartInfo="d:\test.docx"
p.Start
p.WaitForExit() '等待程序结束
Msgbox("文档已经关闭")
如果是单线程程序,在文档关闭前就会一直卡住,所以要用多线程处理。