当前位置:  开发笔记 > 编程语言 > 正文

C#,IAsyncResult和线程池

如何解决《C#,IAsyncResult和线程池》经验,为你挑选了1个好方法。

我使用的Action.BeginInvoke()方法,这是否使用线程池?

我有以下C#代码:

    List hashList1 = hashList.Where((x, ind) => ind % 2 == 0).ToList();
    List hashList2 = hashList.Where((x, ind) => ind % 2 == 1).ToList();

    Action oddWork = CalcHash;
    Action evenWork = CalcHash;

    IAsyncResult evenHandle = evenWork.BeginInvoke(hashList1, null, null);
    IAsyncResult oddHandle = oddWork.BeginInvoke(hashList2, null, null);

    evenWork.EndInvoke(evenHandle); 
    oddWork.EndInvoke(oddHandle);


是否在幕后使用线程池?或者系统是否创建正常线程?



1> JaredPar..:

是的,这项工作将在线程池中进行.MSDN中的这个页面深入介绍了BeginInvoke的工作原理:

http://msdn.microsoft.com/en-us/library/2e08f6yc.aspx

推荐阅读
手机用户2402851155
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有