使用线程池管理线程

本文关键字:线程 管理 | 更新日期: 2023-09-27 18:18:55

在c#中,我们可以像下面这样创建线程

    System.Threading.Thread thd1 = new System.Threading.Thread(new System.Threading.ThreadStart(DoWork));
    thd1.Start();
    System.Threading.Thread thd2 = new System.Threading.Thread(new System.Threading.ThreadStart(DoWork));
    thd2.Start();
    thd1.Join();
    thd2.Join();

如何使用ThreadPool类似地管理线程,而不使用上面的语句?

使用线程池管理线程

在Java中有许多使用ThreadPoolExecutor的选项,这只是其中之一

private ExecutorService executorService = Executors.newCachedThreadPool();
...
executorService.execute(new Runnable() {
  @Override
  public void run() {
     ...
  }
});