多线程--第十九天

来源:互联网 发布:淘宝店铺可以申请几个 编辑:程序博客网 时间:2024/05/17 08:52

启动多线程方法一

package 多线程;



public class 启动多线程方法1 {


public static void main(String[] args) {
new 启动多线程方法1().start();

}
public  void start(){
A a=new A();
B b=new B();
C c=new C();
a.start();
b.start();
c.start();

}
//新建一个A线程
class A extends Thread{
@Override
public void run() {
for(int i=1;i<=100;i++){
System.out.print("A");
}
}
}

//新建一个B线程
class B extends Thread{
@Override
public void run() {
for(int i=1;i<=100;i++){
System.out.print("B");
}
}
}
//新建一个C线程
class C extends Thread{
@Override
public void run() {
for(int i=1;i<=100;i++){
System.out.print("C");
}
}
}

}

方法二:

package 多线程;


public class 启动多线程方法2 {


public static void main(String[] args) {
new 启动多线程方法2().start();

}
public  void start(){
new Thread(new A()).start();;



}
//新建一个A线程
class A implements Runnable{
@Override
public void run() {
for(int i=1;i<=100;i++){
System.out.print("A");
}
}
}

//新建一个B线程
class B implements Runnable{
@Override
public void run() {
for(int i=1;i<=100;i++){
System.out.print("B");
}
}
}

}

线程的同步


package 多线程;


public class 线程的同步 {
Object o=new Object();
public static void main(String[] args) {
new 线程的同步().start();
}
public  void start(){
A a=new A();
// B b=new B();
a.start();
// b.start();
new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
synchronized (o) {
for(int i=1;i<=100;i++){
System.out.print("D");
}
}
}
}).start();;
}
//新建一个A线程
class A extends Thread{
@Override
public void run() {
synchronized (o) {
for(int i=1;i<=100;i++){
System.out.print("A");
}
}
}
}

//新建一个B线程
class B extends Thread{
@Override
public void run() {
for(int i=1;i<=100;i++){
System.out.print("B");
}
}
}
}