bool GlobalVariableSetOnCondition( string name, double value, double check_value)
如果当前值均等对第三参量check_value,设置现有的整体变量的新值。 如果没有整体变量,函数将生成 错误 ERR_GLOBAL_VARIABLE_NOT_FOUND (4058) 并且返回 FALSE。当成功地执行,函数返回 TRUE,否则,它返回 FALSE。 获得详细的错误信息, 查看 GetLastError() 函数。
如果整体变量的当前值与check_value不同, 函数将返回FALSE。
函数将为整体变量提供自动通道,这就是为什么在一个客户终端内几个智能交易可以同时运行的原因。
参数:
name - 整体变量名称。
value - 新值。
check_value - 值与当前整体变量值比较。
示例:
- int init()
- {
- //---- 创建整体变量
- GlobalVariableSet("DATAFILE_SEM",0);
- //...
- }
- int start()
- {
- //---- 尝试锁住源代码
- while(!IsStopped())
- {
- //---- 锁住
- if(GlobalVariableSetOnCondition("DATAFILE_SEM",1,0)==true) break;
- //---- 可以删除变量吗?
- if(GetLastError()==ERR_GLOBAL_VARIABLE_NOT_FOUND) return(0);
- //---- 睡眠状态
- Sleep(500);
- }
- //---- 源代码被锁
- // ...做同样工作
- //----未锁源代码
- GlobalVariableSet("DATAFILE_SEM",0);
- }
复制代码
|