非常重要的尝试--使用queue的多线程

 

10月16日我写了一篇《用pcap和dpkt抓取url部分 》,这是个单进程做的,虽然说效率可以,但毕竟是一个进程。人嘛,总得追求完美,如果用多线程该怎么做呢?(我没有这方面经验)

我先是尝试多线程都去调用capture函数,发现得到的结果是多个重复的,也就是说,每个线程都去做了相同的事情;然后我想到是否可以有一个全局列表,一个线程写,另一个线程读,也失败,因为这样可能导致共享访问出问题。最后看书中发现了队列queue,它自己已经实现了数据保护,不需要我们额外考虑会不会冲突,ok,尝试吧。

写了两个类,一个抓包,一个分析

 

Code

 

posted @ 2009-10-20 17:32  Capricorn.python  阅读(812)  评论(0编辑  收藏  举报