线程安全
cTrader 如何运行算法
cTrader 在与 cTrader Windows 主进程隔离的单独子进程上运行每个指标或 cBot。 这意味着所有新的指标和 cBot 实例都在单独的进程上运行。
这种方法允许 cTrader 对单独的进程施加代码访问限制,从而提高安全性和稳定性。
此外,单独的指标或 cBot 进程不会与主 cTrader Windows 进程共享其资源。 如果指标或 cBot 出现问题,底层问题不会影响 cTrader 本身。
方法和线程安全
API 中只有少数方法是线程安全的,这意味着您可以从任何线程调用它们。 其他所有内容都应在 cBot 或指标的主线程上运行。
在主线程上执行代码
要在 cBot 或指标的主线程上运行某些内容,请使用 BeginInvokeOnMainThread() 方法。 它接受一个操作委托,您可以从任何运行的线程调用它。
在实例之间共享数据
由于每个指标或 cBot 实例都在单个子进程上运行,您可以使用静态属性或字段在同一 cBot 或指标的不同实例之间共享数据。