1、多线程使用
方法一:继承Thread覆写run函数
方法二:实现Runnable借口覆写run函数
public class MyThread extends Thread {
@Override
public void run() {
// TODO Auto-generated method stub
int loop;
for (loop = 0; loop < 10; loop++) {
System.out.println("loop=" + loop);
}
StackTraceElement stack[] = super.getStackTrace();
for (loop = 0; loop < stack.length; ++loop){
System.out.println(stack[loop]);
}
}
}
public class Main {
public static void main(String args[])
{
MyThread myThread_1 = new MyThread();
MyThread myThread_2 = new MyThread();
myThread_1.start();
myThread_2.start();
}
}
2、多线程并发&死锁
并发操作相同数据,一般用static全局变量 ,或者用synchronized 实现操作或者函数同步
死锁通过加入锁开关方式进行控制,首先获取锁,获取到才处理,获取不到不处理。同样获取到锁之后就要枷锁,这样其他人就处理不了了