【问题标题】:Java multiple files different threadsJava多文件不同线程
【发布时间】:2017-02-12 03:45:02
【问题描述】:

我需要处理我正在使用监视服务监视目录的任务,现在每当有任何新文件进入目录时,我都会使用执行程序服务线程池创建线程。 我想知道我拥有的线程类,包含用于读取数据并将其保存到数据库中的逻辑, 我需要任何同步块或同步方法吗?

注意:我正在为每个文件创建单独的线程。

【问题讨论】:

    标签: java multithreading synchronization executorservice


    【解决方案1】:

    简单的答案:如果这些不同的线程在并行运行时会导致“数据一致性”问题,那么您需要同步它们的工作。

    如果这些线程在做什么没有问题,那么你不需要同步它们。

    这里的问题是:这是您的代码,您的要求。 是知道这些线程在做什么的人;以及他们如何操纵数据库的内容。

    这就是这里可以说的全部内容(除非您只是不确定您的代码到底在做什么,那么它可能是您增强问题并显示您的代码的一个选项应该是并行运行的)。

    【讨论】:

    • 是的,我同意你的回答,只是想征求意见。因此,虽然我对不同的文件有不同的线程并且它们分别读取和保存并且这个类将有独立的实例,但我认为它不需要任何同步块或方法?
    • 再说一遍:数据来自哪里并不重要,重要的是它要去哪里。如果来自不同线程的数据进入相同的数据库行,那么您很可能会遇到问题。如果您的代码总是创建完全独立的条目,那么就没有那么多了。
    猜你喜欢
    • 2012-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多