当前位置: 首页 > 面试题库 >

在Android中并发访问文件

边桐
2023-03-14
问题内容

我知道许多操作系统都在文件系统上执行某种锁定,以防止视图不一致。Java和/或Android是否可以保证文件访问的线程安全性?在我自己编写并发代码之前,我想尽可能多地了解这一点。

如果我错过了回答的类似问题,请随时关闭此线程。谢谢。


问题答案:

Android建立在Linux之上,因此继承了Linux的文件系统语义。除非您明确锁定文件,否则多个应用程序和线程可以打开该文件以进行读/写访问。除非您实际上需要跨进程文件同步,否则建议使用普通的Java同步原语来仲裁对文件的访问。



 类似资料:
  • 问题内容: 我的/ res / raw /文件夹(/res/raw/textfile.txt)中有一个资源文件,我正在尝试从我的android应用中读取该文件进行处理。 我尝试了不同的路径语法,但始终会遇到 java.io.FileNotFoundException 错误。如何访问/res/raw/textfile.txt进行处理?是 File file = new File(“ res / ra

  • 问题内容: 我知道这不是线程安全的,但是我不确定其确切含义。 在和都使用的情况下,以下哪种情况会引起问题并需要同步? 两个线程同时读取相同的索引 假设您不在乎获取旧元素还是新元素,则替换尝试同时访问的元素。 问题答案: 两个线程同时读取相同的索引 如果 列表是由分支and 的线程构造的,并且列表在线程被分支之前已完全构建并加载,则可以从公共线程读取多个线程。 这样做的原因是,使用线程和派生该线程的

  • 问题内容: 在具有并发访问的程序中使用映射时,是否需要在函数中使用互斥体来 读取 值? 问题答案: 读者众多,没有作家可以: https://groups.google.com/d/msg/golang- nuts/HpLWnGTp-n8/hyUYmnWJqiQJ 一个作家,没有读者是可以的。(否则,地图不会太好。) 否则,如果至少有一个作家,而作家或读者至少还有一个,那么 所有 读者 和 作家都

  • 问题内容: 我是YAML的新手,一直在寻找解析YAML文件和使用/访问已解析YAML数据的方法。 我遇到过有关如何解析YAML文件的解释,例如PyYAML教程“如何在Python中解析YAML文件”,“将Python字典转换为对象? ”,但是我没有找到一个关于如何从已解析的YAML文件访问数据的简单示例。 假设我有一个YAML文件,例如: 如何访问文本“ branch1文本”? “ YAML解析和

  • 本文向大家介绍Go 并发访问地图,包括了Go 并发访问地图的使用技巧和注意事项,需要的朋友参考一下 示例 进行中的映射并发并不安全。如果要同时访问它们,则必须加锁以对其进行读写。通常,最好的选择是使用,sync.RWMutex因为您可以拥有读写锁。但是,sync.Mutex也可以使用a。 包装函数的权衡是在基础图的公共访问与正确使用适当的锁之间。

  • 我有一个WebApi,它使用EFCore2.0和2个客户端试图同时访问一个操作方法...一个客户端一切正常。但是当2个或更多尝试同时访问一个特定的操作方法时,我在Microsoft.EntityFrameworkCore得到了这个错误: 在前一个操作完成之前,在此上下文上开始了第二个操作。任何实例成员都不能保证是线程安全的 我使用 DI 和存储库进行网络Api。我定义了IUnitOfWork的范围