core java串讲.pdf

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
core java串讲

CoreJava CCoorreeJJaavvaa 串讲 知识点总结 知知识识点点总总结结 多线程开发 多多线线程程开开发发 线程基本概念 1 (11)线程:是进程内部的一个顺序流。线程是一个并发执行的顺序流,一个进程包括多个顺 序执行流程,这执行流程称为线程。 多进程就是多顺序流。 线程是一个操作系统创建并维护的一个资源,对操作系统来说JVM 就是一个进程,对于 单CPU 系统来说,某一个时刻只可能由一个线程在运行。 有一个线程,就会申请一个CPU 操作,以线程为单位分配CPU 资源,有多少个线程, 则分配多少个时间片;线程是封装在进程内部的,同一个进程中的线程可以很方便的共享数 据,但进程和进程之间通信非常麻烦。 进程A 进程B 进程C 全局变量 全局变量 全局变量 2 (22)进程间交换数据: 写读文件 网络通信 写系统变量 data CPU 3 (33)线程由三要素: CPU 1、CCPPUU分配给线程的时间片 2、线程代码(写在run 方法中) code 3、线程数据说明对谁做操作 代码和数据可以共享,CPU 不能共享。 4 (44)多系统开发的四种模式: 两线程间,代码不共享,数据也不共享; 共享代码,但是不共享数据 (服务器对多个客户端进行处理时,会开若干个相同代码处理) 共享数据,但不共享代码 共享数据,也共享代码 只要数据不进行共享,就不会出错。 5 (55)进程是独立的数据空间,线程是共享的数据空间. 线程对象存在于虚拟机对空间的一块连续的地址空间(静态) 注意: 1.线程是动态的,与线程对象是两回事. 2.线程对象与其他对象不同的是线程对象能够到底层去申请管理一个线程资源。 3.只有对线程对象调用start()方法才是到底层去申请管理一个线程资源。 4.任务并发执行是一个宏观概念,微观上是串行的。 6 (66)进程的调度 进程的调度是由OS 负责的(有的系统为独占式,有的系统为共享式,根据重要性,进程有 优先级)。由OS 将时间分为若干个时间片。JAVA 在语言级支持多线程。分配时间的仍然 是OS。 线程类 java.lang 类 Thread 一个Thread 对象就表示一个线程。 线程两种实现方式: 第一种方式:继承Thread 类 第第一一种种方方式式::继继承承TThhrreeaadd 类类 class MyThread extends Thread{ ccllaassss MMyyTThhrreeaadd eexxtteennddss TThhrreeaadd{{ public void run(){ ppuubblliicc vvooiidd rruunn(()){{ // ////需要进行执行的代码,如循环。 } }} } }} public class TestThread{ ppuubblliicc ccllaassss TTeessttTThhrreeaadd{{ public static void main(String[] args){ ppuubblliicc ssttaattiicc vvooiidd mmaaiinn((SSttrriinngg[[]] aarrggss)){{

您可能关注的文档

文档评论(0)

shaoyifen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档