我一直在尝试修改其他人过去开发的应用程序...
这个应用程序进行在线交易(使用为 C# 开发的 api)..所以基本上我有应用程序结构,我设置了一些用户可以检查或取消选中的配置参数,并且有启动和停止按钮
在单击开始按钮时..我正在通过传递函数创建一个线程,该函数将执行所有 aping 和其他内容并将其分配给主表单类
betbot _mybot = this; # mybot is form class
this.main_thread = new Thread(new ThreadStart(_mybot.aping_function);
this.main_thread.Start();
并单击停止按钮,,,app 只是暂停线程
this.main_thread.Suspend()
现在应用程序停止,恢复应用程序功能(aping)的唯一方法是按下开始按钮并重新启动线程..
作为一项新功能,我希望这个线程自动停止并重新启动......每次它达到一定的止损并重新开始......但我做不到
我厌倦的是ManualResetEvent如下
private static ManualResetEvent mrse = new ManualResetEvent(true);
当某些事件在 aping_function 方法中匹配时,我会执行 mrse.reset() 和 mrse.set() ..但这似乎没有效果(没有完全重新启动)
if (stop_loss_condition_met)
{
this.Print1("Bot Is stopped Automatically");
mrse.Reset();
this.Print1("Bot Is re-started Automatically");
mrse.Set();
}
我怎样才能做到这一点