Java基础第二十三天

Java基础第二十三天

多线程:         多条执行单元

         进程:正在运行的应用程序

         线程:进程的执行单元,一条执行路径

                   迅雷下载,360清理

 

         多线程程序实现:

                   线程依赖于进程存在,Thread类

                            子类继承

                            子类重写run方法

                            调用strart(),让线程启动,调用run()方法

                                     同一个线程对象连续两次启动,报错:表示该线程状态有问题

                            getName()方法:标志不同线程,获取线程名称

                            setName():更改线程名字

                   线程随机性:

                            程序执行,抢占CPU资源,CPU在多个程序间切换。

                  

                   第二种实现:

                            创建类,实现Runnable接口

                            重写run方法

                            创建类的实例

                            把类的实现作为Thread的构造参数,创建Thread对象引用

                                     Thread.currentThread().getName()

 

                                     优势:

                                               避免了单继承的局限性;

                                               实现接口的方式只创建一次,更好的实现了数据与操作的分离。

                                     买票代码:

                                               A:共享数据;两种方式;

                                               B:卖出负数,卖出相同票--解决问题方式

                                                        【线程的随机性和延迟性】

 

                                     找问题出处:

                                               A:看有没有共享数据;

                                               B:看共享数据的操作是不是多条语句;

                                               C:看是不是在多线程程序中

                                               解决:把满足条件的代码锁在一起  synchronized

                                     锁对象:同步代码块的锁是任意对象

                   同步方法:把锁就在方法上线程安全问题

                            this对象

                            静态方法:类名.class   Class【字节码文件】类型的对象

                   死锁

                            被同步的代码越少越好,建议使用同步代码块

                            若一个方法全部被同步了,就用同步方法

        

         线程间的通信:

                   学生信息录入与输出:多线程随机性

                            录入一个,输出一个同一个

                            学生 信息录入  信息获取  集中测试类

 

更多相关文章
  • 所谓的"托盘",在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分.在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区. 一 .原理 1.最小化的原理:首先要将窗口隐藏,然后 在绘制图标. 2.恢复的原理:将窗口显示,再将托盘 ...
  • vb.net反射机制 再次做机房收费系统出了点小状况,当运用反射机制生成D层类的对象的时候无法获取到类文件,代码如下,而相同的代码在第一次做机房收费系统的时候并没有报错. Public Class DataAccess '从配置文件获取响应数据库的的字符串这里是sql ReadOnly db As ...
  •   为了解决tomcat在大进行大并发请求时,出现内存溢出的问题,请修改tomcat的内存大小,其中分为以下两种方式: 一.使用 catalina.bat 等命令行方式运行的 tomcat 查看系统最大支持内存命令:java -Xmx1024m -version 1.修改 tomcat\bin\Ca ...
  • mysql高可用有很多方案,如mmm,mysql cluster等,但都无法真正应用到生产环境.偶然间发现mha(master high availability),目前在mysql高可用方面是一个相对成熟的解决方案,它能够在较短时间内实现自动故障检测和故障转移,通常在10~30秒内:并且在repl ...
  • 从vClient中看到一台主机连接断开,有红色报警标志,通过UCS的KVM Console打开发现,屏幕呈现紫屏! 在此之前主机一直运行正常,重启主机后主机能够进入到ESXi中,进入到UCS中看服务器的状态,如下: 根据上图的错误提示发现内存出现问题,找到出现问题的内存的插槽F1. 打开刀片服务器, ...
  • 每个月Net Applications都会发布上个月桌面操作系统份额统计数据. 这个数据可以帮助我们发现整体市场的趋势.根据这份统计数据显示,Windows 7今年1月份市占率微幅下降,从去年12月的56.26%下降至55.92%,Windows XP的市占率微幅上升,从去年12月的18.26%上升 ...
一周排行
  • 易网科技讯 5月27日消息,据国外媒体报道,微软今天正式宣布,个人智能助理小娜将可在iOS和Android系统中运行.微软正计划在这两个移动系统中各自推出独立应用,使小娜得以在微软系统以外的平台运行.微软今日仅提供了 ...
  • Python风格规范 分号 Tip 不要在行尾加分号, 也不要用分号将两条命令放在同一行. 行长度 Tip 每行不超过80个字符 例外: 长的导入模块语句 注释里的URL 不要使用反斜杠连接行. Python会将 圆 ...
  • 给出n中m件商品,每件上面有自己的价格,问能否分成价格和相等的两堆. 设这m件商品的价值总和为s,则应有 (s&1) == 0 且 s >>= 1可达. 若只是单纯的将此多重背包转化成01背包,则 ...
  • 在网络上传输数据时最常用的格式有两种,XML 和 JSON -> XML 搭建一个最简单的 Web 服务器,在这个服务器上提供一段 XML 文本,然后我们在程序里去访问这个服务器,再对得到的 XML 文本进行解 ...
  • 在51CTO安全频道特别策划的隐私保护技术探讨系列的上一篇文章<不断变化的隐私>里,J0ker给大家介绍了现实社会中不断变化的隐私定义和促使隐私定义发生变化的原因,这些都向我们阐述了一个事实:隐私在很多情 ...
  • ssh登录服务器失败的问题   when I ssh to log on the server, error msg:  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...
  • http://blog.csdn.net/dante_k7/article/details/7211868   ldconfig的主要用途: 默认搜寻/lilb和/usr/lib,以及配置文件/etc/ld.so.c ...
  • 准备写这个网站已经很久了.现在简单介绍一下这个网站 1.网站名称 pdWed,即平度婚庆网 2.开发目的 首先是帮朋友忙开发. 另外接一个没有报酬的网站心情非常轻松,可以实现自己编写“没有异味程序”的愿望. 再其次, ...
  • 这篇文章主要介绍了css实现文本和div居中对齐详细讲解示例,需要的朋友可以参考下 1. 文本居中 首先编写一个简单的html代码,设置一个类名为parentDiv的div对象.html代码如下:代码如下:<d ...
  • 中新网7月2日电 据国家工信部网站消息,近期,工信部在天津.海南.江西.湖北.云南五省(市)组织开展的移动电话用户号码携带试验取得新进展,号码携带申请成功率大幅提升,目前总体申请成功率超过70%的预定目标,达到86% ...