C# 正在寻找一个好的练习来帮助我更好地处理多线程
我认为自己是一个相当不错的开发人员,但是说到多线程,我完全是一个n00b。我的意思是,我在工作中唯一做过的多线程处理是非常基本的事情,比如使用线程池生成多个线程来做一些后台工作。不需要同步,也不需要手动创建线程C# 正在寻找一个好的练习来帮助我更好地处理多线程,c#,.net,multithreading,C#,.net,Multithreading,我认为自己是一个相当不错的开发人员,但是说到多线程,我完全是一个n00b。我的意思是,我在工作中唯一做过的多线程处理是非常基本的事情,比如使用线程池生成多个线程来做一些后台工作。不需要同步,也不需要手动创建线程 所以我的问题是,;我想写一些应用程序,它需要大量的多线程,并且需要做所有的高级事情,比如同步等等。。我就是想不出什么东西可以写。我曾想过也许要写我自己的线程池,但我想我需要先学会走路,然后才能跑步。那么有人能提出什么想法呢?它不必有任何真实的用途,它可能毫无意义,毫无价值,但我只想变得更
所以我的问题是,;我想写一些应用程序,它需要大量的多线程,并且需要做所有的高级事情,比如同步等等。。我就是想不出什么东西可以写。我曾想过也许要写我自己的线程池,但我想我需要先学会走路,然后才能跑步。那么有人能提出什么想法呢?它不必有任何真实的用途,它可能毫无意义,毫无价值,但我只想变得更好。我已经阅读了大量关于所有理论的文章和教程,但真正做得更好的唯一方法是实践。那么,有什么好主意吗?来点毫无意义的批处理应用程序怎么样?在单个线程中生成大量数据并将其转储到一个文件中,然后开始将工作拆分为不同大小的线程并转储到另一个文件中,对它们计时,最后比较文件以确保顺序相同。这将使您了解多线程、锁定、互斥以及其他内容,还将展示多线程处理某些任务相对于单线程处理的好处
我脑子里突然想到的第一件事。可能会很枯燥和/或毫无意义,但不要向信使开枪!:) 我认为这本书应该引起大家的注意:
够了吗?试试给我妻子的哔叽缝纫机穿线。这东西运行的线程数超过了2000万美元。我不确定我是否完全理解你所说的“给它们计时并比较最后的文件以确保顺序相同”的意思。对不起,我的意思是一个线程所花费的时间,然后是2、3、4、n个线程所花费的时间等等。很好的阅读材料,但我真的想写一些代码。我已经读了足够多的书…也许尝试实现多线程套接字服务器?还是一些简单的多线程计算?网络爬虫一号写道。好主意!也很有趣。我需要做的就是让队列线程安全,让缓存跟踪已经检查过的URL。谢谢下一步我将尝试WCF web服务器。