我正在编写一个Java应用程序,它可以访问存储为Windows服务器中共享资源的配置文件。该应用程序被大约500名员工使用,因此它让我想到了并发性。
与实现相关,我通过JCIFS库访问该文件,然后使用inputStream来读取和处理它。我猜VM与此应用程序代码无关,所以我指出操作系统,在本例中是windows。
我不知道哪里或如何必须处理此问题,或者即使我必须这样做。
另一方面,我们讨论的是远程文件,但如果文件位于我们的文件系统中会发生什么?在这种情况下,VM有话要说不是吗?可以在文件上打开多少个不同的输入流?和输出流?
我知道这些不是具体问题,所以很难回答它们。但是,非常感谢任何帮助,评论或建议。
提前致谢!!
答案 0 :(得分:1)
另一方面,我们讨论的是远程文件,但如果文件位于我们的文件系统中会发生什么?
它仍然是一个InputStream。
在这种情况下,VM有话要说有没有呢?
如果您愿意,可以,但通常不会。
可以在文件上打开多少个不同的输入流?
受操作系统限制,通常为数千人。
和输出流?
同样的。但是如果您写入具有多个进程的文件,结果可能会很糟糕,但您更有可能只从一个程序获得输出。 (但如果没有重新阅读,你就不知道哪个)
答案 1 :(得分:0)
当您的应用程序正在使用该文件时,该文件是否会被写入?如果不是那么我无法想象这是一个问题。考虑同时打开相同文件的多个编辑器 - 在有人进行更改并写入之前不会造成任何伤害。