“版本:redis-3.0.2,文件:rdb.c,方法:int rdbSave(char *文件名)”,对全局变量“服务器”有一些UPDATE操作:
server.dirty = 0;
server.lastsave = time(NULL);
server.lastbgsave_status = REDIS_OK;
我想知道,子进程如何更新父进程中的变量?从理论上讲,不能。
答案 0 :(得分:0)
rdbSave在主事件循环线程中的前台运行,因此更新不是由智利进程完成的。
查看rdbSaveBackground来实现fork。