开源创意协作引擎Golem:从灵感到项目的结构化协作实践
2026/5/4 2:24:27
在现代软件开发中,多线程并发编程是提升应用性能的关键技术。本文将深入探讨Java并发编程的核心概念、常用工具类以及实战技巧,帮助你掌握高并发场景下的编程能力。
publicclassMyThreadextendsThread{@Overridepublicvoidrun(){System.out.println("线程名称: "+Thread.currentThread().getName());System.out.println("线程正在执行...");}publicstaticvoidmain(String[]args){MyThreadthread=newMyThread();thread.start();// 启动线程}}publicclassMyRunnableimplementsRunnable{@Overridepublicvoidrun(){for(inti=0;i<5;i++){System.out.println(Thread.currentThread().getName()+" - "+i);}}publicstaticvoidmain(String[]args){MyRunnablerunnable=newMyRunnable();Threadthread1=newThread(runnable,"线程1");Threadthread2=newThread(runnable,"线程2");thread1.start();thread2.start();}}importjava.util.concurrent.*;publicclassMyCallableimplementsCallable<Integer>{@OverridepublicIntegercall()throwsException{intsum=0;for(inti=1;i<=100;i++){sum+=i;}returnsum;}publicstaticvoidmain(String[]args)throwsExecutionException,InterruptedException{MyCallablecallable=newMyCallable();FutureTask<Integer>futureTask=newFutureTask<>(callable);Threadthread=newThread(futureTask);thread.start();// 获取返回结果(会阻塞直到任务完成)Integerresult=futureTask.get();System.out.println("计算结果: "+result);}}线程在其生命周期中会经历以下状态:
publicclassThreadStateDemo{publicstaticvoidmain(String[]args)throwsInterruptedException{Threadthread=newThread(()->{try{Thread.sleep(2000);}catch(InterruptedExceptione){e.printStackTrace();}})