精易论坛

标题: 关于多线程的问题 [打印本页]

作者: 小奢华    时间: 2021-1-7 07:55
标题: 关于多线程的问题
用的鱼刺多线程处理任务,但是最多处理五千多个,软件会自动掉了,有时间几十个软件也掉了,这会是什么原因造成的呢,处理的任务我就是post或者get请求网站数据
作者: 猜度    时间: 2021-1-7 08:18
post前初始化com
作者: 正鑫软件开发    时间: 2021-1-7 08:43
唯一一种可能:
多线程中全局变量或程序集变量没加许可证出错了
作者: 君笨笨    时间: 2021-1-7 09:53
修改界面控件,或者全局,集变量的内容的时候加许可证...
作者: 六度科技    时间: 2021-1-7 11:35
全局和程序及变量在写的时候要加许可证
最开始要创建许可证 得到许可证整数型
写之前 进入许可证
写变量
改界面控件
写之后 退出许可证
这样才能保证所有的线程在写变量或者改控件时 只有一个线程能做修改 其它线程排队等待
就不会卡掉了
作者: 小奢华    时间: 2021-1-7 13:11
打劫你裤衩 发表于 2021-1-7 11:35
全局和程序及变量在写的时候要加许可证
最开始要创建许可证 得到许可证整数型
写之前 进入许可证

在线程任务里面,从开始写变量或者是修改控件的时候进入许可证,一直到任务执行完毕退出许可证吗?
作者: 1748974330    时间: 2021-1-7 14:15
小奢华 发表于 2021-1-7 13:11
在线程任务里面,从开始写变量或者是修改控件的时候进入许可证,一直到任务执行完毕退出许可证吗? ...

非局部变量 通通加许可证就行了 控件 全局变量程序集变量 都加  一进一出  
作者: 六度科技    时间: 2021-1-7 15:02
小奢华 发表于 2021-1-7 13:11
在线程任务里面,从开始写变量或者是修改控件的时候进入许可证,一直到任务执行完毕退出许可证吗? ...

创建窗口
A=创建许可证()

被调用线程子程序里
其它代码
进入许可证(A)
写全局/程序集变量 或者 修改控件
退出许可证(A)
其它代码

补充内容 (2021-1-7 15:04):
如果固定的 不同的变量写操作 你可以用不同的许可证
这样避免影响效率
同一个变量或控件 就必须是同一个许可证 不然许可证的意义就不存在了





欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4