关于多进程操作同一文件(文件名定时变更)
本人现有linux的c程序遇到一个问题,请教大家。
A,B两个进程各监控一个端口,端口的数据量很大,平均每端口每5ms收到1k数据,两个进程同时把数据记录到一个文件,数据按照时间段记录(文件名5秒钟一换)。在对文件进行操作时遇到问题。本人思路如下:
1。要求记录速度快,所以不考虑单独的进程进行处理,ipc操作会浪费时间。
2.文件纪录的数据要按照端口接收的先后顺序(时间顺序)进行纪录,因此要求同一时刻只能有一个进程在写文件。
3。因为在固定时间段内,数据记录倒同一文件中,时间段后重新记录文件。需要更新记录文件的描述符。
本人尝试用了用文件互锁fcntl进行控制,但是无法更新文件描述符。
那位高手能够帮助本人解决问题?或者提出其他的解决思路?
急!在线等候