【问题标题】:Java Multithreading with timeoutJava 多线程超时
【发布时间】:2014-08-28 13:32:32
【问题描述】:

我需要为递归目录搜索创建一个多线程 Java 应用程序,其中我需要根据搜索字符串搜索所有文件/文件夹。 示例::

  • 搜索字符串 - '你好'
  • 搜索目录:'C:\'
  • 这里的期望是我需要递归搜索 C:\ 中的所有文件和文件夹 打个招呼

我的想法是为每个目录生成一个线程以获得更好的性能。

挑战在于我们有一个超时因素,其中所有匹配的文件/文件夹都将在超时间隔内显示 - 如果在完成搜索之前发生超时,我们需要显示任何可用的结果。我对如何处理这个超时感到很困惑——你能帮忙吗?

干杯, 周杰伦

【问题讨论】:

    标签: java multithreading timeout


    【解决方案1】:

    认为您可以生成一个子线程进行搜索 - 从主线程中说“ThreadA”。等待主线程和线程 A 的加入。让这个子线程“ThreadA”产生其他线程并有一个相同的连接。让所有的子线程使用 ConcurrentLinkedQueue 来捕获结果——这样,在加入超时后主线程返回后,它可以打印队列中的值

    【讨论】:

      猜你喜欢
      • 2021-05-27
      • 2012-10-11
      • 1970-01-01
      • 2016-07-10
      • 1970-01-01
      • 2013-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多