你的位置:首页 > 软件开发 > Java > java多线程功力

java多线程功力

发布时间:2016-02-20 09:00:15
一、操作系统中线程和进程的概念现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。多线程编程可以使程序具有两条或两条以上的并发执行线索。进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行 ...

java多线程功力

 

一、操作系统中线程和进程的概念现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。多线程编程可以使程序具有两条或两条以上的并发执行线索。进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。例如:网上购物时邮件通知程序,用户单击提交按钮确认订单时,一方面要显示信息提示用户订单已经确认,一方面应该自动给用户发送一份电子邮件。 当所有用户线程执行完毕的时候,JVM自动关闭。但是守候线程却不独立于JVM,守候线程一般是由操作系统或者用户自己创建的。要重写继承的run()方法,run()方法中的代码就是线程所要执行任务的描述。 //创建实现Runnable接口的类的对象。    public DoSomething(String name) {     public void run() {          Thread t1 = new Thread(ds1);         t1.start();  Process finished with exit code 0     public void run() {     public static void main(String[] args) {   要理解线程调度的原理,以及线程执行过程,必须理解线程栈模型。 1、新状态:线程对象已经创建,还没有在其上调用start()方法,不能被线程调度程序调度。同时又几个线程能处于运行状态取决于硬件,如果是双核(每核心一线程)CPU,同一时刻可能有两个线程处于运行状态。注意线程醒来将进入准备状态,并不能保证立即执行,因此指定的时间是线程暂停执行的最小时间。 2、线程的优先级和线程让步yield()线程总是存在优先级,优先级范围在1~10之间,值越大优先级越高。JVM线程调度程序是基于优先级的抢先调度机制。在大多数情况下,当前运行的线程优先级将大于或等于线程池中任何线程的优先级。但这仅仅是大多数情况。yield()方法class MyRunnable implements Runnable 

原标题:java多线程功力

关键词:JAVA

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。