Java动画课件09.pptVIP

  • 1
  • 0
  • 约4.05千字
  • 约 21页
  • 2017-08-23 发布于河南
  • 举报
Thread 线程 第九章 进程Process 与 线程 Thread 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动, 进程是系统进行资源分配和调度的一个独立单位。 线程是进程的一个实体, 是CPU调度和分派的基本单位, 它是比进程更小的能独立运行的基本单位. 线程自己基本上不拥有系统资源, 只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈), 但它可与同属一个进程的其他的线程共享进程所拥有的全部资源。 一个线程可以创建和撤销另一个线程; 同一个进程中的多个线程之间可以并发执行。 任务线程优先级与线程调度 void stop() ?? 【1】方法用于终止一个Thread 的执行。 ???? 线程不能运行(即被阻塞)的四个原因是【2】 、 【3】、 【4】,和【5】 。 ??? 线程进入停止状态的两个原因是: 【6】和【7】。 ? 可以利用【8】 方法修改线程的优先级。 线程可以通过调用【9】 方法将处理器让给另一个优先级相同的线程。 sleep() ?? 如果要在等待一段时间之后再恢复执行一个线程,应调用【1】。 通过调用 resume() 方法, 可以使【1】 线程重新激活。 【1】方法用于使等待队列中的第一个线程进入就绪状态。 * Threads n. 线,细丝,线索,思路,螺纹 Ready Running Blocked Sleeping Waiting start issue I/O request wait notify notifyAll timeout expires interrupt thread dispatch (assign a processor) quantum expiration yield sleep complete sleep interval expires interrupt Born enter synchronized statement I/O completes acquire lock interrupt When a thread completes (returns from its run method), it?reaches the Dead state (shown here as the final state) 新生 就绪 运行 等待 睡眠 堵塞 线程的生命周期 当一个线程达到它的最终状态, 过程便告结束。 超过配额 分配到一个处理器 开始 输出输入完成 等待 睡眠 睡眠间断完毕 进入同步 完成 H I 优先级09 优先级10 优先级08 优先级07 优先级06 优先级05 优先级04 优先级03 优先级02 优先级01 C J K D E F G 就绪线程 A B 等待 睡眠 挂起 I/O阻塞 run方法运行结束 在该线程上调用stop()方法 setPeriority() yield() waiting, sleeping, suspend, blocked for input/output 挂起 notify() Suspended java.lang 类 Thread ?void start() ??????????使该线程开始执行;Java 虚拟机调用该线程的 run 方法。 static?void sleep(long?millis) ??????????在指定的毫秒数内让当前正在执行的线程休眠(暂停执行)。 java.lang 类 Math static?double random() ??????????返回带正号的 double 值,大于或等于 0.0,小于 1.0。 public class MIDlet1 { public static void main(String args[]){ while(true){ System.out.println(Hello); try{ Thread.sleep(1000); }catch(Exception ex){} } // unreachable 无法访问语句 //System.out.println(其他事情); } } /* * 每隔1秒钟,程序打印一个Hello * */ import java.lang.*; public class MIDlet2 { public static void main(String arg[]) { PrintThread pt1 = new PrintThread(); pt1.start(); //以多线程的方式调用run函数 Pr

文档评论(0)

1亿VIP精品文档

相关文档