Java多线程
文章平均质量分 66
张庚
这个东西的原理是什么呢?
展开
-
Java多线程技术初识——3. 线程安全问题
多线程的安全问题表现:先看如下代码:package chapter1502;public class Ticket1 implements Runnable{ private int tickets = 100; public void run(){ while(true){ if(tickets>0){ try { Thread.原创 2013-04-14 22:49:35 · 1400 阅读 · 0 评论 -
在Android中使用ExecutorService、Executors、Feature
今天在读程序源码,源码中有一段这样的程序:private final ExecutorService executorService = Executors .newSingleThreadExecutor();final Future<?> future = executorService.submit(new Runnable() { .原创 2015-05-28 10:43:41 · 2165 阅读 · 0 评论 -
Java多线程技术初识——6. 单例模式在多线程中应用
持续整理中……【单例设计模式:】——该模式是用于解决什么问题? 解决:保证了一个类在内存中只能有一个对象。 比如:多程序访问同一个配置文件,希望多程序操作的都是同一个配置文件 中的数据。那么就需要保证该配置文件对象的唯一性。【思路】 怎样才能保证对象是唯一的呢? 1.其他程序随时原创 2012-07-21 23:30:07 · 1746 阅读 · 0 评论 -
Java多线程技术初识——8 ,等待唤醒机制(一)
在开始讲解等待唤醒机制之前,有必要搞清一个概念——线程之间的通信:多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。通过一定的手段使各个线程能有效的利用资源。而这种手段即—— 等待唤醒机制。等待唤醒机制所涉及到的方法:wait() :等待,将正在执行的线程释放其执行资格 和 执行权,并存储到线程池中。notify():唤醒,唤醒线程池中被wait(原创 2013-04-15 16:56:34 · 6509 阅读 · 0 评论 -
Java多线程总结
以下是Java多线程技术博文的目录:《Java多线程技术初识——1.概述》《Java多线程技术初识——2. 线程的创建》《Java多线程技术初识——3.线程的安全问题》《Java多线程技术初识——4.多线程安全问题的解决》《Java多线程技术初识——5.死锁》《Java多线程技术初识——6.单例模式在多线程中的应用》《Java多线程技术初识——7.线程的生命周期,优先级原创 2013-04-14 23:46:17 · 1862 阅读 · 1 评论 -
Java多线程技术初识——2. 线程的创建
下面通过具体的示例来进行多线程的讲解: 现有 100张火车票,分别有由 1~4 窗口来卖。 Java中提供了两种创建多线程的方式:先用第一种方式来完成售票动作:方式一:继承Thread类,覆盖run方法;步骤:1. 定义类覆盖Thread类;2. 覆盖Thread类中的run方法;3. 创建Thread类的子类对象创建线程原创 2013-04-14 22:32:57 · 1158 阅读 · 0 评论 -
Java多线程技术初识——9,等待唤醒机制(二)
这篇主要讲解,JDK1.5以后,对多线程技术的改进。那么,为什么要对之前的技术进行改进呢,在上篇中的多生产者,多消费者例子中,当有一个线程在执行时,其他的线程在申请对锁的拥有权是,会不断的进行判断,这样会降低降低程序的性能。为此,JDK 1.5 以后,对多线程技术做了改进。JDK1.5后出现的新的接口和类:Lock:比同步函数和同步代码块要好一些。同步函数还是同步代码块所做的都是隐式的锁操作。原创 2013-04-15 17:12:46 · 1619 阅读 · 0 评论 -
Java多线程技术初识——1. 概述
话还得从头说起——进程简介:在未配置OS的系统中,程序的执行方式是顺序执行,即必须在一个程序执行完成后,才允许另一个程序的执行,这种执行方式的特点在于:程序必须按照顺序来执行!进入多道程序环境下,则允许多个程序并发的执行,但并发执行的特点在于:间断性,同时还会失去封闭性,而最大的弊端则在于 程序的执行结果,不可再现。为了,保证程序的并发执行,引入了进程的概念!进程之间,通过同步,互斥等一系原创 2013-04-14 22:12:56 · 1433 阅读 · 0 评论 -
Java多线程技术初识——7. 线程的生命周期,优先级,调度
早些日子以前接触了,Java的多线程技术!那时候的学习,主要是在网上下载,各种教学视频,跟着视频学习,后来,发现,跟着视频学习,有个瓶颈——知识并不是很系统!于是,就决定买书,读书来学习,用的是——《Java How To Program》。感觉,这本书,特别不错!Java的多线程技术——使Java语言具有比C 和 C++ 语言更加强大的功能,C和C++ 均为单线程语言【C和C++实现多线程原创 2013-04-08 22:09:04 · 3138 阅读 · 0 评论 -
Java多线程技术初识——5. 死锁
死锁:指多个进程or 线程在运行过程中因争夺资源而造成的一种僵局,当线程 处于 这种僵态是,若无外力作用,他们将无法再向前推进。最常见的死锁情况,同步的嵌套:同步中还有同步,两个同步用的不是一个锁。 我们应当,尽量避免同步嵌套的情况。如下所示:public class Clock { public static Clock locka = new Clock();原创 2013-04-14 23:30:56 · 1473 阅读 · 0 评论 -
Java多线程技术初识——4. 多线程安全问题的解决
多线程安全问题的解决方案:首先我们得明白两个概念:同步 和 互斥;同步——这是线程 or 进程之间的 合作关系。对多个线程在执行次序上进行协调,以使并发的各个线程能更好的利共享资源,相互合作。多个线程之间,一个线程需要等待另一个线程执行完毕后才能继续执行。 如:下文中,当一个线程拿到锁没有释放之前另一个线程不能执行,只能是等待上个线程 释放了锁之后才能执行。 互斥——这是线程原创 2013-04-14 23:20:34 · 4340 阅读 · 1 评论 -
Android多线程相关知识总结——源码分析
这篇文章主要讨论Android中多线程相关的内容,其中包括如下内容 Java 多线程的基础知识 预备基础知识,包括但不限于:Callable、Future、RunnableFuture 、FutureTask、Executor、ThreadPoolExecutor、Android中的消息机制 AsyncTask的实现原理,主要是源码分析 AsyncTask存在的问题以及使原创 2017-03-21 20:18:03 · 1460 阅读 · 0 评论