java线程

http://developer.51cto.com/art/200512/15883.htm
2011-07-04 13:57 | 阅读 714 次 | 评论 0 条

理论总复习

线程总复习创建 线程方式 (1)继承Thread(2)实现Runnable 注意: 在类中要重写run()方法启动线程 第一种直可以实例化线程类用start()启动 第二种也要实例线程类。之后在构建一个Thread实例,将线程实例名作为Thread的参数 参考实例:http://hi.bccn.net/space-447825-do-blog-id-17017.html Thread的相关方法 isDaemon()测试该线程是否为守护线程(后台线程) setDaemon...
2010-05-23 20:36 | 阅读 825 次 | 评论 1 条

wati和notify的应用

public class SyncTest{ public static void main(String args[]){ SyncStack stack = new SyncStack(); Runnable p=new Producer(stack); Runnable c = new Consumer(stack); Thread t1 = new Thread(p); Thread t2 = new Thread(c); t1.start(); t2.start(); ...
2010-05-23 20:16 | 阅读 1096 次 | 评论 0 条

死锁的应用

public class TestDeadLock{ public static void main(String args[]){ StringBuffer sb = new StringBuffer("ABCD"); MyThread t = new MyThread(sb); t.start(); synchronized(sb){ try{ t.join(); }catch(InterruptedException e){ ...
2010-05-23 20:06 | 阅读 954 次 | 评论 0 条

栈的实用实例

class Stack{ int idx=0; char[ ] data = new char[6]; public void push(char c){ data[idx] = c; System.out.print("压入字符" + c + "->"); //p1 idx++; System.out.println("->压入" + c + "操作完成!"); } public char pop(){ idx--; return data[idx];...
2010-05-23 19:53 | 阅读 985 次 | 评论 1 条

挂起和恢复的实例

import java.awt.Color;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Date;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JButton;public class TestSuspend{ public static void main(String[] args){ JFrame jf = new JFrame("T...
2010-05-23 19:48 | 阅读 900 次 | 评论 0 条

yeild的应用实例

import java.util.Date;public class TestYield{ public static void main(String[] args){ Thread t1 = new MyThread(false); Thread t2 = new MyThread(true); Thread t3 = new MyThread(false); t1.start(); t2.start(); t3.start(); } }class MyThread extend...
2010-05-23 19:36 | 阅读 952 次 | 评论 0 条

线程的串行化

public class TestJoin { public static void main(String args[]){ MyRunner r = new MyRunner(); Thread t = new Thread(r); t.start(); try{ t.join(); }catch(InterruptedException e){ e.printStackTrace(); } for(int i=0;i<50;...
2010-05-23 19:24 | 阅读 801 次 | 评论 0 条

线程优先级实例

public class TestPriority { public static void main(String args[]){ System.out.println("线程名\t优先级"); Thread current = Thread.currentThread(); System.out.print(current.getName() + "\t"); System.out.println(current.getPriority()); Thread t1 = new R...
2010-05-23 19:19 | 阅读 961 次 | 评论 0 条

GUI实例

import java.awt.*;import java.awt.event.*;public class TestGUIThread { public static void main(String args[]) throws Exception{ Frame f = new Frame(); Button b = new Button("Press Me!"); MyMonitor mm = new MyMonitor(); b.addActionListener(mm); f...
2010-05-23 19:10 | 阅读 957 次 | 评论 0 条

后台线程实例

public class TestDaemonThread { public static void main(String args[]){ Thread t1 = new MyRunner(10); t1.setName("用户线程t1"); t1.start(); Thread t2 = new MyRunner(100); t2.setDaemon(true); t2.setName("后台线程t2"); t2.start(); ...
2010-05-23 19:03 | 阅读 894 次 | 评论 0 条

线程实例1(如何创建和启动线程)

public class Test1 {//创建和启动线程 public static void main(String[] args) { //启动线程1 Thread1 t1=new Thread1(); t1.start(); //启动线程2 Thread2 t2=new Thread2(); Thread t2i=new Thread(t2); t2i.start(); }}//创建一个线程的第一种方式class Thread1 extends Thread{ public void run(){ ...
2010-05-23 18:43 | 阅读 768 次 | 评论 0 条
浏览274685次