我需要执行一个针对多个来源的搜索请求。
我之前进行过一些多线程编程,但都是“发射即忘”。
现在我想要做的是,在三个不同的对象上启动3个相同的请求,等待它们全部完成(这就带来了第一个问题:它们如何表达“我完成了”),然后收集它们发送给我的所有数据。
因此,在伪代码中,我有以下接口:
然后以多线程/异步方式在这三个对象上调用
希望这些文字让您更好地理解我的想法 :)
我正在开发一个ASP.Net 3.5 C#项目。
因此,在伪代码中,我有以下接口:
interface ISearch
SearchResult SearchForContent(SearchCriteria criteria)
因此,在代码中我创建了三个搜索服务:
ISearch s1 = new SearchLocal();
ISearch s2 = new SearchThere();
ISearch s3 = new SearchHere();
然后以多线程/异步方式在这三个对象上调用
SearchForContent(SearchCriteria criteria)
,然后它们都会带着它们的SearchResult
回到我这里,等它们都完成后,我会处理它们的SearchResult
对象。希望这些文字让您更好地理解我的想法 :)
我正在开发一个ASP.Net 3.5 C#项目。