memset(&wflk,0,sizeof(struct flock));
wflk.l_type = F_WRLCK;
wflk.l_whence = 0;
wflk.l_start = SEEK_SET;
wflk.l_len = 0;
fcntl(fd, F_SETLK, &wflk);
if(wflk.l_type==F_UNLCK){
printf("lock has F-UNLCK1\n");
}
else{
printf("1\n");
}
if(fcntl(fd, F_GETLK, &wflk)==0){
if(wflk.l_type==F_UNLCK){
printf("lock has F-UNLCK2\n");
}
}
为什么输出会是1和lock has F-UNLCK2 这是什么情况求解决呀