| jiayin's profile看天下美景吃天下美味PhotosBlogLists | Help |
|
November 02 Bad design导致俩线程还不如一个一个UDP应用,应用层确认/重传,凡是没收到确认的就重发一次。客户端用了俩线程,一个不停的收包,收到就放到一个queue中,另一个是主程序,发现 queue里面有包就一个一个拿出来处理。结果大量的重传发生,有时候在queue里面堵了200多个包才切换线程给主程序处理。一狠心干脆改成一个线程,有包就收,收了就处理,处理完了再等着收,反而重传率下降了。 想一下,其实问题就在重传的时候客户端没做比较,一个包被不停的重发,被客户端当作不同的包收下来囤着。。。 不是啥时候都Multithreading就好的 |
|
|