当前位置: 首页 > news >正文

美橙互联同类型网站世纪兴网站建设

美橙互联同类型网站,世纪兴网站建设,快速优化系统,宁波优化网页基本流程JAVA多线程的实现 JAVA有两种方法创建线程 (1)继承Thread类 (2)实现Runnable接口 这两种方法都要用到Thread类以及相关方法 Thread类 是一个具体的类,不是抽象类,封装了线程的行为 利用Thread类创建一个…

JAVA多线程的实现

JAVA有两种方法创建线程
(1)继承Thread类
(2)实现Runnable接口
这两种方法都要用到Thread类以及相关方法

Thread类

是一个具体的类,不是抽象类,封装了线程的行为
利用Thread类创建一个线程,必须创建一个从Thread类导出的新的子类,必须覆盖Thread的run()方法来完成线程的工作
当线程启动时必须调用Thread的start()函数

Runnable接口

该接口只有一个函数run(),此函数必须由实现了此接口的类实现
当使用该接口时,不能直接创建所需类的对象并运行它,必须从Thread类的一个实例内部运行它

既然有了Thread类,为什么还需要Runnable接口?
JAVA是单继承多实现,一个JAVA类只能继承一个父类,但可以同时实现多个接口。如果一个类已经继承了一个其他的父类,又要实现多线程时,那么就不能继承Thread类来实现,而要通过Runnable接口定义多线程

多线程程序编写关键操作

(1)定义用户线程的run()方法
(2)用new创建对象,建立用户线程实例
(3)启动线程,调用线程对象的start()方法

利用Thread子类创建线程

写一个子类继承Thread类并覆盖其中的run方法,run中的代码就是线程要实现的功能;
创建子类对象;
start方法启动线程

Runnable接口创建线程

定义一个Thread类对象,利用Thread构造方法,将本类作为参数传递给Thread对象

互斥

当多个线程需要访问同一资源,而这一资源在某一时刻只允许一个线程访问,则这些线程是互斥的

同步

多个线程需要访问同一资源,而且需要相互配合才能正常工作,则这些线程运行时就是一种同步关系

临界区

存放共享资源的区域一次只允许一个线程进入,该区域被称为临界资源。线程在访问共享资源前需要进行检查,看自己能否对该资源访问。如果有权访问,还需要阻止其他线程进入该区域

死锁

多个线程相互等待其他线程释放资源,且所有线程都不能释放自己所占用的资源,从而导致相关线程处于永远等待的状态

信号量

用于解决进程间的互斥和同步
信号量的设置必须使用PV原语

PV原语方法及关键字

public final void wait() 告知被调用的线程放弃管程进入睡眠,直到其他线程进入相同管程并调用notify(),将本线程转入阻塞状态

public final void notify() 恢复相同对象中第一个调用wait的线程

public final void notifyAll() 恢复相同对象中所有调用wait的线程,具有最高优先级的线程最先运行

synchronized 标志被同步使用的资源,系统为资源分配管程,保证在某一时间内,只有一个线程对象在享有这一资源,也被称为对象锁

线程互斥步骤

设置一个各个线程共享的信号量,值为true或false
线程需要访问共享资源前,先检测信号量的值。如果不可用,则调用wait()转入等待状态
如果可用,则改变信号量的状态,不让其他线程进入
访问完共享资源后,再修改信号量状态,允许其他线程进入
调用notify()或notifyAll(),唤醒其他等待的线程

线程的同步

为了实现线程之间严格交替运行,需要对线程进行同步控制
两个需要同步的线程会根据信号量的值,判断自己能否进入临界区。比如,一个线程只有当信号量为真时才能进入,而另一个则是假时进入
最后用对象名.notify()的当时唤醒指定的某线程类创建的线程对象

生产者消费者问题

设计一个公共类,并用该类创建一个对象,信号量和共享资源都以静态成员变量的形式存在于对象中。无论哪个线程对象访问的都是同一个信号量和共享资源
同样将生产方法和消费方法都封装到这个公共类中
信号量是介于[0,BUFFERSIZE]之间的整型数,因为缓冲区允许连续多个生产者或消费者线程进入

http://www.yayakq.cn/news/952604/

相关文章:

  • 网站建设总体费用网上商城系统概述
  • 网站建设昆明包装设计广东省住房和城乡建设厅官网
  • 网站未授权cas要怎么做管理网站
  • 义乌个人兼职做建设网站WordPress评论第页
  • 网站开发语言总结有哪些最实用的仓库管理系统
  • 成都网站建设制作设计福建坤辕建设工程有限公司网站
  • 浅谈电子商务网站建设与规划珠海做企业网站多少钱
  • 网站建设标书样本太原在线制作网站
  • 妇产科网站建设我想建个网站
  • 建设网站都要学些什么手续在线做效果图有哪些网站有哪些
  • 阿里云添加网站原创软文
  • 提升型企业网络营销网站网络推广具体内容
  • 姑苏区网站建设wordpress後台建站
  • 楼盘 东莞网站建设html网站两边的浮窗怎么做
  • 两学一做 官方网站怎么制作网站镜像
  • wordpress preview.net网站做优化
  • 火狐浏览器网站开发人员网站编写
  • 网站做sem优化实体店引流推广方法
  • 阿尔及利亚网站后缀阜阳网站开发
  • 廊坊网站建设方案郑州最新政策
  • 乐清建站公司阿克苏网站建设价格
  • 昆明百度智能建站建设部的网站
  • 花都定制型网站建设开发公司个人工作总结
  • 手绘风网站杭州网络公司网站
  • 自己建网站做网店乡村建设规划网站
  • wordpress多站模式西安短视频拍摄制作公司
  • 提供手机网站建设网络经营网址怎么注册
  • 备案号 不放在网站上宁波网站建设风格
  • 餐饮酒店网站建设网站 医院信息化建设
  • 做游戏网站要备案吗邢台经济开发区