linux 文件 并发,并发访问文件linux

我正在研究如何在

linux中完成系统调用读/写,我发现了这个:

....

loff_t pos = file_pos_read(f.file);

ret = vfs_read(f.file, buf, count, &pos);

file_pos_write(f.file, pos);

fdput(f);

...`

我的问题是:

锁定在哪里?我想象的是:

....

lock(f.file); //

loff_t pos = file_pos_read(f.file);

ret = vfs_read(f.file, buf, count, &pos);

file_pos_write(f.file, pos);

fdput(f);

unlock(f.file); //

...

如果多个线程同时尝试读/写,它们可以在相同的偏移量下读/写?

如果我的理解是正确的,那个linux不使用任何锁定机制来保护偏移量,这个POSIX是否兼容?

我确实看过POSIX规范,但没有发现这个案例.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值