java使用线程的两种方法:
1.继承Thread
2.实现Runnable
线程中的一些方法:
wait():
Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对
此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。
sleep:
是线程类(Thread)的方法,...
分类:
编程语言 时间:
2014-12-18 22:17:44
阅读次数:
225
死锁:
概念:
所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象:死锁。
死锁发生...
分类:
编程语言 时间:
2014-12-18 18:49:46
阅读次数:
214
设计这样一个程序:两个用户去银行存钱,每次存100,存3次,显示银行中总的钱数。
class Bank
{
private int sum;//sum代表银行中钱的总量
public void add (int n)
{
sum += n;
System.out.println("sum = "+sum);
}
}
cla...
分类:
编程语言 时间:
2014-12-18 15:11:59
阅读次数:
230
Java 程序只允许单一继承,即一个子类只能有一个父类。所以在Java中如果一个类继承了某一个类,同时又想采用多线程技术的时,就不能用继承Thread类的方式产生线程了,因为Java不允许多继承。这时就要用Runnable接口来创建线程了。采用实现Runnable接口方式实现多线程的大致步骤如下:定...
分类:
编程语言 时间:
2014-12-17 10:37:32
阅读次数:
197
Java可以通过继承Thread类实现多线程,具体步骤如下:定义一个新的类继承自Thread类。在新的类中实现run()方法,此方法即为新线程的运行程序代码。创建一个新的类的对象,并调用对象的start()方法。Thread存放在java.lang类库里,但并不需加载java.lang类库,因为它会...
分类:
编程语言 时间:
2014-12-16 16:58:48
阅读次数:
140
还是之前卖票的例子:
class Test implements Runnable
{
private int num = 50;
Object obj = new Object();
public void run ()
{
while (true)
{
if (num >= 0)...
分类:
编程语言 时间:
2014-12-14 17:16:53
阅读次数:
128
本故事是这样的,我们有随军和起义军两个军队线程,他们互相打斗厮杀,知道我们英雄人物程咬金的加入,用他的个人能力来让战争停止,从而让世界回归和平,接下来是我们的两个线程类。军队线程(BaseArmy)和关键人物...
分类:
编程语言 时间:
2014-12-14 13:22:51
阅读次数:
185
做一个练习:卖票小程序,实现数据共享。
我们先来创建线程,和主线程交替运行。
这个就比较简单了:
就以继承Thread类的方式来说吧:
class MyThread extends Thread
{
private int num = 150;
private String name;
public MyThread(String name)...
分类:
编程语言 时间:
2014-12-13 01:00:33
阅读次数:
204
1.定义类Handle, 实现runable接口,复写run()方法。2.创建线程对象,并将Runable接口子类对象 作为构造函数的参数。Thread t=new Thread(new Handle() );3.调用线程对象的start()方法,开启线程:t.start();1.定义类Handle...
分类:
编程语言 时间:
2014-12-12 01:16:34
阅读次数:
194
一、操作系统中线程和进程的概念 现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。 进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在...
分类:
编程语言 时间:
2014-12-11 10:36:40
阅读次数:
265