易语言启动线程 怎么放在计次循环里面使用
1个回答
展开全部
你好,这个问题很好解决
启动线程()可以直接放到计次循环首里面的。
例:
.计次循环首 (1000, ) ' //循环1000次
启动线程 (&子程序1, , )
延迟 (10) ' //加个延迟可以让窗口不会卡屏
.计次循环尾 ()
创建并启动一条线程,可重复使用以创建多条线程,成功返回真,失败返回假。本命令为初级命令。
参数<1>的名称为“欲执行的子程序”,类型为“子程序指针(SubPtr)”。本参数提供创建线程时欲启动的子程序,根据是否需要传递参数数据,该子程序必须没有或具有一个整数型参数,否则将出错。
参数<2>的名称为“参数数据”,类型为“整数型(int)”,可以被省略。本参数提供线程被启动时传递到欲启动子程序的整数数据。如果本参数未被省略,此时被启动子程序必须接收一个整数型参数,否则将出错。
参数<3>的名称为“线程句柄”,类型为“整数型(int)”,可以被省略,提供参数数据时只能提供变量。如果提供了本参数,将向参数变量写入线程句柄(Windows下为HANDLE,Linux下为pthread_t),请在适当的时机关闭该句柄。如果不提供本参数接收线程句柄,内部将自动处理线程句柄。
我写了一份例程源代码供你参考!
希望我的回答对你有所帮助!Kiss灬小猪
更多追问追答
追问
这个我知道 但是 用线程读出来的 数据跟 平常读出来的数据有差异 是怎么回事啊
追答
你所指的差异是 读取显示出来的数据没按顺序来是吗?
解决方案:
在启动线程前添加
集部整数型变量=创建许可区()
在线程子程序里添加
进入许可区(集部整数型变量)
在线程尾部添加
退出许可区(集部整数型变量)
以上那个许可区就是用来等待线程处理完用的,当进入了许可区,其它的线程必须等待那个许可区退出以后才能处理! 这样就不会有顺序之类的问题了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询