方法一:继承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();
- }
- }
并发操作相同数据,一般用static全局变量 ,或者用synchronized 实现操作或者函数同步
死锁通过加入锁开关方式进行控制,首先获取锁,获取到才处理,获取不到不处理。同样获取到锁之后就要枷锁,这样其他人就处理不了了