摘要:
JVM是基于堆栈的虚拟机.JVM为每个新创建的线程都分配一个堆栈.也就是说,对于一个Java程序来说,它的运行就是通过对堆栈的操作来完成的。堆栈以帧为单位保存线程的状态。JVM对堆栈只进行两种操作:以帧为单位的压栈和出栈操作。 我们知道,某个线程正在执行的方法称为此线程的当前方法.我们可能不知道,当前方法使用的帧称为当前帧。当线程激活一个Java方法,JVM就会在线程的 Java堆栈里新压入一个帧... 阅读全文
摘要:
TCP连接数:和操作系统有关,如果是windows 2000 ,那么默认对TCP/IP不做限制,有多少就连接多少,XP最多10个,所以不要认为什么机器都可以做ServerJVM线程数:和物理内存有关,每个线程最少消耗128k。那么理想情况下 一个虚拟机下可建立的线程数 = 分配给JVM的内存 / 128K还没写完。。待续 阅读全文
摘要:
NIO 主要是用在服务端 处理高并发的情况下,用少量的线程处理很多个并发请求,它的优势在服务端、高并发,并且也是基于IO的,相当于封装了一层IOIO主要用在客户端 处理单一链路,因为同一个socket在处理read和write是不阻塞的,但是同时read或者write都是阻塞的,这导致只能同时一个线程处理read和write如果基于NIO开发客户端,那么不能体现NIO的优势,一方面封装了IO,反而... 阅读全文