我想知道,在java1.6 x64中,让许多线程处于等待状态是多么的昂贵。
更具体地说,我正在编写跨多台计算机运行的应用程序,并从一台计算机向另一台计算机发送/接收数据。我觉得每个连接的机器和任务都有单独的线程更舒服,比如1)发送数据,2)接收数据,3)当连接被丢弃时重新建立连接。因此,假设集群中有N个节点,对于N-1个邻居,每台机器将有3个线程。通常有12台机器,即33个通信线程。
这些线程中的大多数将在大部分时间处于休眠状态,因此为了优化目的,我可以减少线程的数量并为每个线程分配更多的工作。打个比方。重新建立连接是接收线程的责任。或者发送到所有连接的机器都是由单线程完成的。
那么,拥有许多休眠线程是否会对性能产生重大影响呢?
https://stackoverflow.com/questions/100707
复制相似问题