我如何每小时将数据写入具有多个进程的当前小时命名的文件?

时间:2015-06-11 09:11:36

标签: c++ linux logging multiprocessing

我必须根据服务器中的当前小时将一些数据写入文件。例如,将数据写入名为2015061117.txt的文件。并且有多个进程同时将数据写入文件。我该如何设计我的服务器来实现它?我是否需要使用某些同步api,如pthread_mutex_lock?

1 个答案:

答案 0 :(得分:1)

如果您想要多个进程,甚至多个线程同时写入同一个文件,那么您需要同步它们,这样一次只能写入一个进程或线程。

我的建议是使用一个处理所有日志记录的单独进程或线程,其他进程/线程将“消息”发送到日志记录进程/线程,然后按照接收它们的顺序写入消息。与Linux中的syslog系统类似。