-
进程:程序执行的过程(动态的),是持有资源和线程的载体查看全部
-
Thread常用方法介绍查看全部
-
Thread常用方法查看全部
-
线程常用方法查看全部
-
Thread线程查看全部
-
Java线程——线程交互——互斥与同步 一、互斥 1、同一时间,只能有一个线程访问数据 二、同步 1、是一种通信机制,一个线程操作完成后,以某种方式通知其他线程 三、实现方法 1、【互斥】构建锁对象(Object objLock),通过synchronized(lockObj){ 互斥的代码块 } 2、加锁操作会开销系统资源,降低效率。 3、在某线程的条件不满足任务时,使用lockObj.wait()对线程进行阻挡,防止其继续竞争CPU资源,滞留在wait set中,等待唤醒,【唤醒后继续完成业务】 4、【同步】在某一代码正确执行完业务后,通过lockObj.notifyAll()唤醒所有在lockObj对象等待的线程 ------------------------------------ 实现互斥与同步: 1、private final Objecct LockObj = new Object(); 2、synchronized(LockObject){需要互斥操作的代码}。将LockObj锁定起来,只有持有LockObj的线程才能访问代码。 3、优化性能,让不满足条件的线程等待一段时间,而不重复使用cpu。while(条件){LockObj.wait();}通过.wait()方法释放锁。 4、当线程满足条件(没有执行LcokObj.wait()),在主代码执行完毕后,加上LockObj.notifyAll()来唤醒全部执行了LockObj.wait()的线程。 ---------------------------- synchronized锁关键字实现线程互斥 持续的申请锁会降低系统性能,所以这里需要使用wait()方法,让线程进入一个等待的状态,从而避免了线程不停的持续申请锁,降低系统的性能 lockObj.notifyAll(); 唤醒所有在lockObj对象上等待的线程查看全部
-
http://www.cnblogs.com/riskyer/p/3263032.html 推荐大家去看看这篇文章 详解java线程查看全部
-
Runnble接口中只有一个run()抽象方法,创建线程还要通过构造Thread类对象实现查看全部
-
Thread 方法查看全部
-
知识扩展3查看全部
-
知识扩展3查看全部
-
扩展知识2查看全部
-
线程扩展知识查看全部
-
总结:知识要点查看全部
-
线程对同一内存资源竞争查看全部
举报
0/150
提交
取消