看流星社区

 找回密码
 注册账号
查看: 2959|回复: 2

个人认为用易语言开发多线程必须了解的东西.

[复制链接]

该用户从未签到

发表于 2013-7-23 21:47:01 | 显示全部楼层 |阅读模式
为了精简,直接点出要点.

第一点.
    访问全局变量必须加锁.     >>> 这是常识,别问我为什么.


第二点.
    多线程入口点必须加 finit 指令将浮点寄存器初始化.    >>>>>这个是非常严重的问题,这属于易语言的特有缺陷,因为易语言的算数运算是使用浮点来进行计算的.如果不进行浮点寄存器初始化,会非常容易产生浮点异常,结果就是,程序直接挂掉.(顺带一说,论坛90%的多线程程序都没注意这点,导致多线程异常,那是必然的~)


第三点.
   操作组件,操作数据库,等等你不熟悉的支持库命令,必须加锁.         >>>>> 什么是加锁,如果加锁都不知道,建议还是别弄什么多线程了,不会稳定的.这又属于易语言的问题,因为当初易语言开发支持库命令时,就根本没考虑多线程的问题.
举例,易语言的库函数会导致多线程必然发生问题的的命令:比如"DLL命令调用转向"这个命令,实现方法就必须设置全局变量,必然多线程问题.


最后点睛之语,菜鸟就别用易语言玩多线程了,不稳定的因素多如牛毛~

该用户从未签到

发表于 2013-7-24 01:35:17 | 显示全部楼层
求师傅。求大神带

该用户从未签到

发表于 2014-2-8 18:13:23 | 显示全部楼层
谢谢,我收下了
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-5-15 00:15

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表