今天Linux环境上遇到个报错,经查日志发现两个JVM进程里几乎同时对同一个文件进行相同操作的重命名(File.renameTo)都返回true。 基本确定这方法是个非同步的操作了,刷新了认知.... 因为这方法底层是个native方法,所以不容易分析也不容易造出同样的问题场景,有谁同样遇到过,求分析
1条回答 默认 最新
- 被遗忘的DIA 2024-05-07 13:58关注
这与是不是Native方法有关系吗?
进程就是用来隔离资源用的。2个无关联的进程什么都没有做,自然是没法同步彼此的。需要调用操作系统API才能跨进程同步,例如Linus的chattr
命令,就可以用来锁定文件。chattr(1) - Linux manual page https://www.man7.org/linux/man-pages/man1/chattr.1.html解决 无用评论 打赏 举报
悬赏问题
- ¥20 MATLAB仿真三相桥式全控整流电路
- ¥15 EDA技术关于时序电路设计
- ¥15 百度文心一言流式返回sse失败
- ¥15 由于远程方已关闭传输流,身份验证失败
- ¥15 rt-detr,PCB,目标检测
- ¥15 有偿求指导实证代码。cfps清洗合并后,无论是构建平衡面板还是非平衡面板,都是只剩几百个样本量。求指导一下哪里出问题了,不要潦草回复
- ¥15 mutlinichenet
- ¥50 Qt5.14.2怎样使用qlistwidget存储指针类数据并更新?
- ¥15 STM32多路复用器ADC采样
- ¥20 Linux(ubuntu)操作相关问题