TC官方合作论坛
标题:
临界区的问题!
[打印本页]
作者:
sc2908
时间:
2014-5-6 22:58
标题:
临界区的问题!
临界区 不能再 循环里面使用么!
我一使用 程序就死了!
作者:
qq253028918
时间:
2014-5-6 23:06
代码放上来 才知道
作者:
sc2908
时间:
2014-5-6 23:21
功能 线程A()
循环(真)
线程.进入临界区(对象句柄) //进入临界区,这时候其他线程不能访问临界区中资源,想要访问的线程会被挂起等待
辅助.等待(500)
辅助.消息框("点点滴滴")
线程.离开临界区(对象句柄) //离开临界区,这时候其他线程可以访问临界区中的资源
循环结束
返回 真
功能结束
功能 线程B()
循环(真)
线程.进入临界区(对象句柄) //进入临界区,这时候其他线程不能访问临界区中资源,想要访问的线程会被挂起等待
辅助.等待(500)
辅助.消息框("点点")
线程.离开临界区(对象句柄)
//离开临界区,这时候其他线程可以访问临界区中的资源
循环结束
返回 真
功能结束
功能 开始_点击()
对象句柄=线程.创建临界区() //创建临界区对象
i=10 //初始化 i
句柄A=线程.开启("事件测试A.线程A","对象句柄")
句柄B=线程.开启("事件测试A.线程B","对象句柄")
线程.等待(句柄A,-1) //无限等待线程A,B,这个等待很重要,我们可以用别的方法代替,如果这里不等待函数就执行完返回了
线程.等待(句柄B,-1) //但是线程里的代码却可能还没有执行完毕,下一句删除了临界区对象,这时候如果还有别的语句线程却还在执行,程序可能崩溃
线程.删除临界区(对象句柄)//最后记得删除临界区对象释放资源,这时候如果再 线程.进入临界区(对象句柄) 程序就可能崩溃,因为对象不存在了
返回 真
功能结束
这个 运行 两下 就挂了!
作者:
冷月无痕
时间:
2014-5-7 01:29
句柄A=线程.开启("事件测试A.线程A",对象句柄)
句柄B=线程.开启("事件测试A.线程B",对象句柄)
作者:
dangq
时间:
2014-5-7 08:37
开启线程的参数 "对象句柄" 加上引号成了文本型常量了 去掉引号才是变量
作者:
sc2908
时间:
2014-5-7 13:29
取消了 但是 两个 线程里面都 无限 循环的 话 一会 程序就卡死了! 有没法 解决的啊!
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1