老师,我看到您的代码中,对每一个新的客户端都new了一个线程,那么当类似QQ群这样人数上限2000的时候,线程创建销毁的代价是不是会很高?这时新建一个线程池,然后传入chatHandler去执行,然后根据用户访问量设置核心线程数啥的,会不会效率高一些?而且非核心的线程是会被自动回收的,这样是不是算是优化了呢?
我的第二个想法是,concurrentHashMap是线程安全的且支持高并发访问的一个很棒的类,如果Map用的是concurrentHashMap是不是不需要对每个方法进行sychronized修饰了呢?并且由于只是在修改那一处需要保证线程安全,方法内其他的地方就可以并发访问了,提高了并发效率,是不是好点了捏?
这些只是我临时想到的一些想法,请老师指正。么么哒