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

家居装修企业网站源码龙华网站建设方案表

家居装修企业网站源码,龙华网站建设方案表,企业门户网站模式,自动生成图片的网站1.什么是线程#xff1f; 线程是操作系统能够进行运算调度的最小单位#xff0c;它被包含在进程之中#xff0c;是进程中的实际运作单位。 2.线程和进程有什么区别#xff1f; 线程是进程的子集#xff0c;一个进程可以有很多线程#xff0c;每条线程并行执行不同的任…1.什么是线程 线程是操作系统能够进行运算调度的最小单位它被包含在进程之中是进程中的实际运作单位。 2.线程和进程有什么区别 线程是进程的子集一个进程可以有很多线程每条线程并行执行不同的任务。不同的进程使用不同的内存空间而所有的线程共享一片相同的内存空间。 3.如何在Java中实现线程 一共有三种方式 1.继承Thread类 2.实现Runnable接口重写run方法 2.实现Callable接口重写call方法(可以返回值和抛出异常) 用Runnable还是Thread 在java中不支持多继承支持多实现如果该类需要继承其它类则选择Runnable; 5.Thread 类中的start() 和 run() 方法有什么区别 start()方法被用来启动新创建的线程使进程就绪状态而run()方法 执行线程使线程进入运行状态。 6.线程的几种状态 1、新建状态(New)新创建了一个线程对象。 2、就绪状态(Runnable)线程对象创建后其他线程调用了该对象的start()方法。该状态的线程位于“可运行线程池”中变得可运行只等待获取CPU的使用权。即在就绪状态的进程除CPU之外其它的运行所需资源都已全部获得。 3、运行状态(Running)就绪状态的线程获取了CPU执行程序代码。 4、阻塞状态(Blocked)阻塞状态是线程因为某种原因放弃CPU使用权暂时停止运行。直到线程进入就绪状态才有机会转到运行状态。 阻塞的情况分三种 (1)、等待阻塞运行的线程执行wait()方法该线程会释放占用的所有资源JVM会把该线程放入“等待池”中。进入这个状态后是不能自动唤醒的必须依靠其他线程调用notify()或notifyAll()方法才能被唤醒 (2)、同步阻塞运行的线程在获取对象的同步锁时若该同步锁被别的线程占用则JVM会把该线程放入“锁池”中。 (3)、其他阻塞运行的线程执行sleep()或join()方法或者发出了I/O请求时JVM会把该线程置为阻塞状态。当sleep()状态超时、join()等待线程终止或者超时、或者I/O处理完毕时线程重新转入就绪状态。 5、死亡状态(Dead)线程执行完了或者因异常退出了run()方法该线程结束生命周期。 7.线程同步的几种方法 1.synchronized关键字修饰语句块或者修饰方法 2.volatile关键字修饰变量 3.使用重入锁Lock ReentrantLock类是可重入、互斥、实现了Lock接口的锁 它与使用synchronized方法和快具有相同的基本行为和语义并且扩展了其能力 ReenreantLock类的常用方法有 ReentrantLock() : 创建一个ReentrantLock实例 lock() : 获得锁 unlock() : 释放锁 注ReentrantLock()还有一个可以创建公平锁的构造方法但由于能大幅度降低程序运行效率不推荐使用 4.使用线程本地变量 ThreadLocal 5.使用阻塞队列实现线程同步(java.util.concurrent包中提供的类) 8.volatile与synchronized的区别 1volatile本质是在告诉jvm当前变量在寄存器中的值是不确定的,需要从主存中读取,synchronized则是锁定当前变量,只有当前线程可以访问该变量,其他线程被阻塞住. 2volatile仅能使用在变量级别,synchronized则可以使用在变量,方法. 3volatile仅能实现变量的修改可见性,而synchronized则可以保证变量的修改可见性和原子性. 4volatile不会造成线程的阻塞,而synchronized可能会造成线程的阻塞. 9.终止线程的3中方式 1.线程正常执行完毕正常退出。 2.使用while()循环在特定条件下退出。 3.使用interrupt方法终止线程。 10.什么是线程池 为什么要使用它 创建线程要花费昂贵的资源和时间如果任务来了才创建线程那么响应时间会变长而且一个进程能创建的线程数有限。为了避免这些问题在程序启动的时候就创建若干线程来响应处理它们被称为线程池里面的线程叫工作线程。如果并发的线程数量很多并且每个线程都是执行一个时间很短的任务就结束了这样频繁创建线程就会大大降低系统的效率因为频繁创建线程和销毁线程需要时间。线程池使得线程可以复用就是执行完一个任务并不被销毁而是可以继续执行其他的任务。线程池主要作用是便于管理线程节约时间与资源。 11.线程死锁 两个或两个以上的线程争夺共享资源并各自不释放手中的资源而造成死锁。 解决办法1.让所有的线程按照一定的顺序获得一组锁2.将多个锁组成一组并放到一个锁里。 12.sleep()和wait()的区别 sleep()使线程暂停一段时间占用CUP资源没用释放锁 wait()使线程进入等待池中释放CPU资源释放锁
http://www.hkea.cn/news/14591052/

相关文章:

  • 东莞网站推广模板信用网站标准化建设模块都有哪些
  • 利用模板如何制作网站设计图片素材
  • 网站建设注册哪类商标平面设计技术培训机构
  • 甘肃网站建设域名注册公司wordpress 伪静态设置
  • wordpress网站熊掌粉丝关注网站中英文版怎么做
  • 建站宝盒全能版怎么在微信上做网站
  • 南京中小企业网站制作平面设计培训机构排行
  • 做网站公司哪家好无线网络优化工程师
  • 网站系统维护要多久wordpress适合百度
  • 网站建设服务器的选择方式包括优秀的网站建设公司排名
  • 温州 网站建设公司类似wordpress的系统有哪些
  • 做游戏评论注册国外网站seo公司推广
  • 多城市分站站群cms深圳市住房保障署官网
  • 泰安市景区建设网站wordpress文档结构
  • 深圳网站制作培训资质升级业绩备案在哪个网站做
  • 现在什么网站比较火做推广企业宣传网站建设模板
  • 定制网站开发食道里感觉有东西堵白底图片在线制作
  • 深圳专业商城网站制作网站如何做播放线路
  • 网站微信二维码悬浮怎么做试玩平台推广网站
  • 网站布局设计分析特点公司网站建设情况
  • 上海网站建设优化seo网站集约化建设工作总结
  • dedecms 食品网站企业网站建设的目的和意义
  • 西部数码网站管理助手 破解版手机qq钓鱼网站怎么做
  • 怎样免费建企业网站如何建CMS网站
  • 网站设计汕头wordpress 优化seo插件
  • 网站引入视频播放如何制作网站教程
  • 原型设计网站网站建设任职要求
  • 四川省住房建设厅网站进不去合肥做公司网站一般多少钱
  • 高端营销型企业网站建设衡阳市网站建设
  • php网站如何上传数据库宣传片拍摄手法和镜头