java - createTempFile 是线程安全的吗?

标签 java file-io thread-safety temporary-files

我正在使用 Java 6。

调用 createTempFile(属于 java.io.File 类)的两个线程是否可能获得相同的临时文件?

最佳答案

获得答案的最佳方法是查看源代码。起初在createTempFile中没有任何同步,但是为了生成临时文件名,它使用了ThreadSafe的SecureRandom。 那么除非你真的很倒霉,否则你的文件总是会得到一个不同的名字。

最重要的是,createTempFile 实现是循环的,生成新的文件名,直到文件被创建。文件创建当然委托(delegate)给我们可以假设是线程安全的 native 文件系统操作..

关于java - createTempFile 是线程安全的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4702537/

相关文章:

linux - 如何从 Linux 上的系统缓存中逐出文件?

c# - 使用 StreamWriter 可以写入的字符数是否有最大限制?

c++ - Armadillo 的 eig_sym 中的线程安全问题

Java线程安全计数器自锁实现

java - 需要澄清 JMS 与 ActiveMQ bean/资源配置

java - 在部署到 tomcat 的 GWT servlet 中使用 java sendmail 发送邮件

java - JBoss 类加载不兼容的类更改错误

C++ 存储大量 map 坐标的最佳文件格式

java - HBase PrivilegedExceptionAction runAs 线程?

java - android:处理程序根本不工作