SolrNet中的异步操作

时间:2012-08-22 00:51:56

标签: .net multithreading solr task-parallel-library solrnet

是否可以在SolrNET中按照APM(开始,结束)模式进行异步操作?我需要在我的Asp.NET Web应用程序中对不同的Solr搜索索引进行多次异步调用,我试图通过使用非阻塞线程来减少线程池的负载。请指教。感谢。

1 个答案:

答案 0 :(得分:1)

至少查看the SolrNet source,而IHttpWebRequest接口包含Begin / End对,那些在接口中没有使用/暴露的更高(如ISolrConnection),所以AFAICT你必须改变(或重新实现)那些支持它。

也就是说,它可能只是按原样尝试(使用Task.Run等等)并查看你是否真的最终使线程池挨饿 - 如果你这样做,你可以用更高的限制重新配置它,毕竟。 :)

通过TAP制作基于SolrNet任务的工作可能是一大堆努力,因为您通常需要通过堆栈的所有级别执行异步/任务(在SolrNet的情况下,可能应该在fork中执行此操作)目标4.5,因此它可以依赖新的HttpClient及其原生的基于任务的调用)