请举例说明多线程在Java中的应用。

原创 一时失言乱红尘 2025-03-14 02:21 18阅读 0赞

在Java中,多线程是一种资源管理和任务分解的技术。它允许一个程序同时执行多个任务。

以下是一个简单的例子,展示了如何使用Java的Thread类创建并运行多线程:

  1. // 创建一个共享数据的对象
  2. public class SharedData {
  3. private int count = 0;
  4. public synchronized int getCount() {
  5. return count;
  6. }
  7. public synchronized void incrementCount() {
  8. count++;
  9. }
  10. }
  11. // 多线程示例类
  12. public class MultiThreadExample {
  13. private SharedData data;
  14. public MultiThreadExample(SharedData data) {
  15. this.data = data;
  16. }
  17. // 这个方法会被两个线程同时调用
  18. public void threadTask() {
  19. for (int i = 0; i < 10; i++) {
  20. try {
  21. // 同步访问共享数据,避免数据竞争问题
  22. synchronized (data) {
  23. data.incrementCount();
  24. }
  25. } catch (InterruptedException e) {
  26. e.printStackTrace();
  27. }
  28. }
  29. }
  30. public static void main(String[] args) {
  31. SharedData sharedData = new SharedData();
  32. MultiThreadExample example = new MultiThreadExample(sharedData);
  33. // 创建两个线程并启动它们
  34. Thread thread1 = new Thread(example::threadTask), "Thread 1");
  35. Thread thread2 = new Thread(example::threadTask), "Thread 2");
  36. thread1.start();
  37. thread2.start();
  38. try {
  39. // 等待所有线程完成执行
  40. thread1.join();
  41. thread2.join();
  42. } catch (InterruptedException e) {
  43. e.printStackTrace();
  44. }
  45. }
  46. }

在这个例子中,MultiThreadExample类有两个方法会被两个线程同时调用:threadTask和它们的方法签名。这样就创建了一个共享数据的多线程环境。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,18人围观)

还没有评论,来说两句吧...

相关阅读