您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Java FileLock是POSIX咨询(fcntl)锁吗?

Java FileLock是POSIX咨询(fcntl)锁吗?

包括Linux在内的某些Unix操作系统提供BSD样式(flock)锁,因此可能认为JavaFileLock可以使用BSD样式的锁而不是POSIX锁来实现。但这是不可能的,因为BSD风格的锁是整个文件 锁而不是 记录 锁,并且FileLock是记录锁:每个锁都针对文件中的一定范围的字节。因此,在Unix系统上没有真正的选择,并且假设FileLock使用POSIXfcntl锁的实现是在Unix操作系统上的安全假设。

生成FileLock锁可能会或可能不会与BSD样式的锁交互。可以使用POSIX锁来实现BSD样式的锁(对于2.0之前的Linux就是这种情况),或者操作系统可能具有两种锁定交互方式(对于FreeBSD就是这种情况)。但是总的来说,这是无法保证的,并且BSD风格的锁和Java锁可能实际上对彼此是不可见的(对于任何您可能会遇到的Linux版本,都是这种情况)。

java 2022/1/1 18:29:26 有636人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶