基于事件的编程,如何响应发送请求的实例
本文关键字:响应 实例 请求 何响应 于事件 事件 编程 | 更新日期: 2023-09-27 18:02:51
我有一个执行长时间运行操作的函数。我的应用程序的许多表单/类访问该函数。当操作完成时,它调用一个事件,该事件绑定了许多不同表单的实例。
如何避免事件调用绑定到它的所有函数。当调用函数时,我想从客户端表单传递一些变量/UUID,然后可以用来调用类/表单的特定实例。
有多个线程在操作这个函数。
class MyClass: IMyInterface
{
public event ObjectReceivedDelegate PriceResponse;
MyClass()
{
}
public void GetPrice(List<string> symbols)
{
//Call a long running function from a service in a background thread
}
void GetPricesAsync_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
PriceResponse(e.Result);
}
}
可以将Action传递给函数。像
void SomeFunc(Action a)
{
// your code
a.Invoke();
}