有没有办法检查文件是否在C / C ++中使用?或者我是否必须始终实现锁定/信号量以防止多个线程/进程同时访问任何文件?
如果我们考虑Linux,以及以下场景:我想使用预定义的通信框架,以块的形式将存储在设备A中的文件的内容通过RS-232通信传输到另一个设备B.当请求进行此传输时,我想验证文件是否未被设备A中的任何进程使用,然后发送“准备传输:确定”响应,之后我将开始读取并以块的形式传输数据。 有没有办法检查文件是否已经在使用而不对所述文件执行fopen / fclose?
答案 0 :(得分:0)
实际上
fopen();
是找到这个的最好方法。
在接收端执行fopen(),如果成功,则发送“OK to receive”消息。