我从Excel VBA调用了一个冗长的C#计算,我想允许用户使用CTRL-C中断和中止计算。有人可以建议一个干净的技术来处理这个? C#代码被编译为com-visible类库,其目的是纯数字运算。
(同样重要的是Excel会话不会干扰其他任务,如果用户有 - 例如在等待时去读取他的邮件)。
答案 0 :(得分:0)
您可以调用异步并在C#代码中使用ManualResetEvents来检查是否需要在代码中的某些位置停止计算。这需要一个额外的功能才能从VBA设置此ManualResetEvent。