找回密码
 点一下
查看: 528|回复: 4

"临界区"这个函数有实例么?

[复制链接]
发表于 2013-5-6 23:26:12 | 显示全部楼层 |阅读模式
临界区.jpg
“当有多个并行进程试图修改同一参数时,该动作可用于避免竞争”
发表于 2013-5-7 00:54:52 | 显示全部楼层
这个其实只是个包装,不是一个单独的函数的说
回复

使用道具 举报

发表于 2013-5-7 01:22:11 | 显示全部楼层
Renee  1:15:32
那个触发器函数其实不是一个函数
Renee  1:15:39
而是一段宏
Renee  1:15:48
最终会变成一段脚本
Renee  1:15:55
实际执行内容为
Renee  1:16:07
判断临界变量是否为true
Renee  1:16:16
如果为true那么等1秒再判断
Renee  1:16:26
一直到它为false为止
Renee  1:16:36
然后执行这样的操作
A棒棒P (397637463)  1:16:39
一个效果集分为3段执行,在执行完第一段或第二段之后,某个参数变了。。。执行第三段的时候就溢出卡死了。。
Renee  1:16:47
将临界变量赋值为true
Renee  1:16:53
然后再执行临界代码
Renee  1:17:12
最后把临界变量设为false
A棒棒P (397637463)  1:17:29
感觉智商严重不够了。。我揣摩一下。。。
Renee  1:17:35
    while (gv_s) {
        Wait(1.0, c_timeGame);
    }
    gv_s = true;
    //执行代码
    gv_s = false;
Renee  1:17:55
这里假设你使用了gv_s作为临界变量
回复

使用道具 举报

 楼主| 发表于 2013-5-7 03:08:27 | 显示全部楼层
暂时还是不能理解,不过经过头目的讲解,似乎有一点概念了!回头再慢慢研究~
回复

使用道具 举报

发表于 2013-5-9 14:42:21 | 显示全部楼层
听起来像“等待,直到条件成立,然后。。”这样的结构。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-9-28 18:47 , Processed in 0.201582 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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