javaの複数のプロセスからログ出力する際に排他制御を行うため、
Logback + SLF4Jの組み合わせでログ出力させることにしています。
C言語からもこのログファイルにログ出力する必要があり、
Logback + SLF4Jで排他制御している仕組みを使って
C言語とjavaで排他制御して、ログ出力を行いたいと
思っています。
Logback + SLF4Jがどのような仕組みを使って排他制御を行っているか
教えていただけないでしょうか。
FileChannelというクラスを使っていますが、これらをC言語で排他することが出来ないでしょうか。
C言語で排他ロックするのは、以下のような感じでしょうか。
FILE * fp;
fp=fopen("out.log","a"));
flock(fileno(fp),LOCK_EX);
lseek(fileno(fp),0,SEEK_SET);
flock(fileno(fp),LOCK_UN);//ロックの解除
fclose(fp);
FileChannelが同じような排他方法で排他ロックしていれば、C言語とJavaで排他ロックができるのですが。。
回答3件
あなたの回答
tips
プレビュー