引言: 1.多线程中有主内存和工作内存之分,在JVM中,有一个主内存,专门负责所有线程共享数据;而每个线程都有他自己私有的工作内存,主内存和工作内存分贝在JVM的stack区和heap区。
摘要:1.庞大的java流处理
首先,之所以说java流的庞大,是因为java中的流处理比其他语言的流处理在内容上多的多。java流在处理上分为字符流和字节流。字符流处理的单元为2个字节的unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。java内用unicode编码存储字符,字符流处理类负责将外部的其他编码的字符流和java内unicode字符流之间......
摘要:一、http协议的作用原理www是以internet作为传输媒介的一个应用系统,www网上最基本的传输单位是web网页。www的工作基于客户机/服务器计算模型,由web 浏览器(客户机)和web服务器(服务器)构成,两者之间采用超文本传送协议(http)进行通信。http协议是基于tcp/ip协议之上的协议,是web浏览器和web服务器之间的应用层协议,是通用的、无状态的、面向对象的协议。http......
多线程设计要点1.多线程中有主内存与工作内存之分, 在jvm中,有一个主内存,专门负责所有线程共享数据;而每个线程都有他自己私有的工作内存, 主内存与工作内存分贝在jvm的stack区与heap区. 【程序编程相关:
重拳出击 Linksys中国市场新布局】 【推荐阅读:
阿尔卡特向Thales公司转让更多业务】2.线程的状态有ready, running, sleeping, blocked, 与 waiting几个状态, 【扩展信息:
百度已正式宣布开放互联网新闻开放协议】 ready 表示线程正在等待cpu分配允许运行的时间. 3.线程运行次序并不是按照我们创建他们时的顺序来运行的,cpu处理线程的顺序是不确定的,如果需要确定,那么必须手工介入,使用setpriority()方法设置优先级. 4.我们无从知道一个线程什么时候运行,两个或多个线程在访问同一个资源时,需要synchronized 5. 每个线程会注册自己,实际某处存在着对它的引用,因此,垃圾回收机制对它就“束手无策”了. 6. daemon线程区别一般线程之处是:主程序一旦结束,daemon线程就会结束. 7. 一个对象中的所有synchronized方法都共享一把锁,这把锁能够防止多个方法对通用内存同时进行的写操作.synchronized static方法可在一个类范围内被相互间锁定起来. 8. 对于访问某个关键共享资源的所有方法,都必须把它们设为synchronized,否则就不能正常工作. 9. 假设已知一个方法不会造成冲突,最明智的方法是不要使用synchronized,能提高些性能. 10. 如果一个"同步"方法修改了一个变量,而我们的方法要用到这个变量(可能是只读),最好将自己的这个方法也设为 synchronized. 11. synchronized不能继承, 父类的方法是synchronized,那么其子类重载方法中就不会继承“同步”. 12. 线程堵塞blocked有几个原因造成: (1)线程在等候一些io操作 (2)线程试图调用另外一个对象的“同步”方法,但那个对象处于锁定状态,暂时无法使用. ...
下一页 摘要:socket传输模式 sockets有两种主要的操作方式:面向连接的和无连接的.面向连接的sockets操作就像一部电话,他们必须建立一个连接和一人呼叫.所有的事情在到达时的顺序与它们出发时的顺序时一样.无连接的sockets操作就像是一个邮件投递,,没有什么保证,多个邮件可能在到达时的顺序与出发时的顺序不一样. 到底用哪种模式是邮应用程序的需要决定的.如果可靠性更重要的话,用面向连接的操作会好一......