风险 安全性 多个线程共享数据时,可能会产生于期望不相符的结果; 活跃性 某个操作无法继续进行下去时,就会发生活跃性问题,比如死锁,饥饿等问题; 性能 线程过多使得CPU频繁切换,调度时间增多; 多线程会使用同步机制,使一些优化手段失效; 多线程会消耗过多内存; 优势 速度 同时处理多个请求,响应更快; 复杂的操作可以分成多个进程同时进行; 设计 程序设计在某些情况下更简单,也可以有更多的选择; 资源利用 CPU能在等待IO的时候做一些其他的事情;