易截截图软件、单文件、免安装、纯绿色、仅160KB

Java线程:概念与原理

Java线程:概念与原理
 
SCJP5学习笔记
 
一、操作系统中线程和进程的概念
现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。
进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。
 
线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比如java.exe进程中可以运行很多线程。线程总是属于某个进程,进程中的多个线程共享进程的内存。
 
“同时”执行是人的感觉,在线程之间实际上轮换执行。
 
二、Java中的线程
在Java中,“线程”指两件不同的事情:
1、java.lang.Thread类的一个实例;
2、线程的执行。
 
使用java.lang.Thread类或者java.lang.Runnable接口编写代码来定义、实例化和启动新线程。
 
一个Thread类实例只是一个对象,像Java中的任何其他对象一样,具有变量和方法,生死于堆上。
 
Java中,每个线程都有一个调用栈,即使不在程序中创建任何新的线程,线程也在后台运行着。
 
一个Java应用总是从main()方法开始运行,mian()方法运行在一个线程内,它被称为主线程。
 
一旦创建一个新的线程,就产生一个新的调用栈。
 
线程总体分两类:用户线程和守候线程。
当所有用户线程执行完毕的时候,JVM自动关闭。但是守候线程却不独立于JVM,守候线程一般是由操作系统或者用户自己创建的。


相关文档:

Java程序员转到C++开发容易发生的疏漏。

1. 变量不做初始化。
2. 分配的对象不做销毁。一个好的习惯就是,每生成一个类时,就自动写一个自己的InitInstanceMember,和 ReleaseInstanceMember()方法。
3. 包的分类,如果自己不做source的逻辑分类,C++环境一般是不会自己做的。这个跟Java中的package和文件物理上存储方式一致是不一样的。
    C++ ......

java servlet 乱码

java写文件乱码
StringBuffer sb = new StringBuffer();
  sb.append("<table  border=\"0\" width=\"100%\" cellpadding=\"0\" cellspacing=\"1\" bgcolor=\"b5d6e6\"");
  sb.append("<tr>");
  sb.append("<td bgcolor=\"#FFFFFE\" height=\"42\" colspan=\""+ (jsd ......

java常用设计模式

设计模式
一个程序员对设计模式的理解:
“不懂”为什么要把很简单的东西搞得那么复杂。后来随着软件开发经验的增加才开始明白我所看到的“复杂”恰恰就是设计模式的精髓所在,我所理解的“简单”就是一把钥匙开一把锁的模式,目的仅仅是着眼于解决现在的问题,而设计模式的“复杂&rdq ......

java的一些常用包

commons-digester.jar
Digester基于规则的XML文档解析,主要用于XML到Java对象的映射.
commons-beanutils.jar
提供对Java 反射和自省API的包装.
aspectjweaver.jar
用于在Spring 2.0中集成AspectJ AspectJ LTW织入器
ognl.jar
OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(E ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号