标签:线程
-
008-八、网络编程之多线程之管道流
引言 在java语言中提供了很多输入与输出流,使我们方便了对数据进行操作,其中管道流是一种特殊的流,用于在不同线程间直接传输数据。一个线程发送到输出管道,另一个线程从输入管道中读取…
-
007-七、网络编程之生产者消费者(二)
前言 上一节讲解了生产者与消费者模式的基本理论以及简单实现,并且遗留下来一个消费商品是 null,库存为:-1的问题 ,看下代码。 /** * 首先需要一个商品共享类 */ Goo…
-
005-五、网络编程之线程同步&死锁详解
引言 我们再谈 synchronied 同步,现在我们都知道了 synchronied 是同步代码了,它默认是的对象锁是 this,往往效率都不高,因为每次执行到 synchron…
-
004-四、网络编程之线程安全详解
一、方法内部变量线程安全 方法内部的变量一般不会有“非线程安全”的问题。示例。 public class TheadTest5 { public static void main(…
-
003-三、网络编程之线程优先级和守护详解
一、线程优先级 线程可以划分优先级,优先级分为1-10的10个等级,数字越大优先级越高,优先级较高的线程得到CPU资源较多,也就是CPU优先执行优先级较高的线程对象中的任务(其实并…
-
002-二、网络编程之线程停止详解
引言 多线程中有三种方式可以停止线程。 设置标记位,可以是线程正常退出。 使用stop方法强制使线程退出,但是该方法不太安全所以已经被废弃了。 使用Thread类中的一个inter…
-
001-一、网络编程之多线程Runnable
Runnable JDK说的:Runnable 接口应该由那些打算通过某一线程执行其实例的类来实现。实现类必须实现一个名称为 run 的无参数方法。 也有其它的说法是:如果让一个线…
-
11-Java多线程(十一)- 有返回值的线程
在Java5之前,线程是没有返回值的,常常为了“有”返回值,破费周折,而且代码很不好写。或者干脆绕过这道坎,走别的路了。 现在Java终于有可返回值的任务(也可以叫做线程)了。 可…
-
10-Java多线程(十)– 并发协作:死锁
线程发生死锁可能性很小,即使看似可能发生死锁的代码,在运行时发生死锁的可能性也是小之又小。 发生死锁的原因一般是两个对象的锁相互等待造成的。 在《[Java线程:线程的同步与锁](…
-
08-Java多线程(八)- 线程的同步
一、同步方法 线程的同步是保证多线程安全访问竞争资源的一种手段。 线程的同步是Java多线程编程的难点,往往开发者搞不清楚什么是竞争资源、什么时候需要考虑同步,怎么同步等等问题,当…
-
07-Java多线程(七)– 线程的调度
Java线程调度是Java多线程的核心,只有良好的调度,才能充分发挥系统的性能,提高程序的执行效率。 这里要明确的一点,不管程序员怎么编写调度,只能最大限度的影响线程执行的次序,而…
-
06-Java多线程(六)- 线程的交互
线程交互是比较复杂的问题,SCJP要求不很基础:给定一个场景,编写代码来恰当使用等待、通知和通知所有线程。 一、线程交互的基础知识 SCJP所要求的线程交互知识点需要从java.l…
-
05-Java多线程(五)- 线程的同步与锁
一、同步问题提出 线程的同步是为了防止多个线程访问一个数据对象时,对数据造成的破坏。 例如:两个线程ThreadA、ThreadB都操作同一个对象Foo对象,并修改Foo对象上的数…
-
04-Java多线程(四)- 线程状态的转换
一、线程状态 线程的状态转换是线程控制的基础。线程状态总的可分为五大状态:分别是生、死、可运行、运行、等待/阻塞。用一个图来描述如下: ![2014081300002](https…
-
03-Java多线程(三)– 线程栈模型与线程的变量
要理解线程调度的原理,以及线程执行过程,必须理解线程栈模型。 线程栈是指某时刻时内存中线程调度的栈信息,当前调用的方法总是位于栈顶。线程栈的内容是随着程序的运行动态变化的,因此研究…
-
02-Java多线程(二)– 创建与启动
一、定义线程 1、扩展java.lang.Thread类 此类中有个run()方法,应该注意其用法: public void run() 如果该线程是使用独立的 Runnable …
-
01-Java多线程(一)– 概念与原理
一、操作系统中线程和进程的概念 现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。 进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以…
-
java基础学习总结——线程(二)
一、线程的优先级别 线程优先级别的使用范例: 1 package cn.galc.test; 2 3 public class TestThread6 { 4 public …
-
java基础学习总结——线程(一)
一、线程的基本概念 线程理解:线程是一个程序里面不同的执行路径 每一个分支都叫做一个线程,main()叫做主分支,也叫主线程。 程只是一个静态的概念,机器上的一个.c…
-
第10篇:Java IO 并发IO
原文链接 作者: Jakob Jenkov 译者: 李璟 有时候你可能需要并发地处理输入和输出。换句话说,你可能有超过一个线程处理输入和产生输出。比如,你有一个程序需要处理磁盘上的…