资源简介

UNIX环境高级编程 第三版 随书代码

资源截图

代码片段和文件信息

#include “apue.h“
#include 

static void
lockabyte(const char *name int fd off_t offset)
{
if (writew_lock(fd offset SEEK_SET 1) < 0)
err_sys(“%s: writew_lock error“ name);
printf(“%s: got the lock byte %lld\n“ name (long long)offset);
}

int
main(void)
{
int fd;
pid_t pid;

/*
 * Create a file and write two bytes to it.
 */
if ((fd = creat(“templock“ FILE_MODE)) < 0)
err_sys(“creat error“);
if (write(fd “ab“ 2) != 2)
err_sys(“write error“);

TELL_WAIT();
if ((pid = fork()) < 0) {
err_sys(“fork error“);
} else if (pid == 0) { /* child */
lockabyte(“child“ fd 0);
TELL_PARENT(getppid());
WAIT_PARENT();
lockabyte(“child“ fd 1);
} else { /* parent */
lockabyte(“parent“ fd 1);
TELL_CHILD(pid);
WAIT_CHILD();
lockabyte(“parent“ fd 0);
}
exit(0);
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-03-20 09:38  apue.3e\
     目录           0  2014-03-20 09:38  apue.3e\advio\
     文件         827  2014-03-20 09:38  apue.3e\advio\deadlock.c
     文件         172  2012-07-05 08:08  apue.3e\advio\fixup.awk
     文件         197  2014-03-20 09:38  apue.3e\advio\lockfile.c
     文件         641  2014-03-20 09:07  apue.3e\advio\Makefile
     文件        1536  2014-03-20 09:38  apue.3e\advio\mandatory.c
     文件        1228  2014-03-20 09:38  apue.3e\advio\mcopy2.c
     文件         590  2014-03-20 09:38  apue.3e\advio\nonblockw.c
     文件         492  2014-03-20 09:38  apue.3e\advio\readn.c
     文件         866  2014-03-20 09:38  apue.3e\advio\rot13a.c
     文件        3199  2014-03-20 09:38  apue.3e\advio\rot13c2.c.in
     文件         498  2014-03-20 09:38  apue.3e\advio\writen.c
     目录           0  2014-03-20 09:38  apue.3e\daemons\
     文件        1580  2014-03-20 09:38  apue.3e\daemons\init.c
     文件         159  2012-07-23 02:21  apue.3e\daemons\Makefile
     文件        1526  2014-03-20 09:38  apue.3e\daemons\reread.c
     文件        1232  2014-03-20 09:38  apue.3e\daemons\reread2.c
     文件         761  2014-03-20 09:38  apue.3e\daemons\single.c
     目录           0  2014-03-20 09:38  apue.3e\datafiles\
     文件         340  2014-03-20 09:38  apue.3e\datafiles\getpwnam.c
     文件         273  2014-03-20 09:07  apue.3e\datafiles\Makefile
     文件         471  2014-03-20 09:38  apue.3e\datafiles\strftime.c
     目录           0  2014-03-20 09:38  apue.3e\db\
     文件         797  2014-03-20 09:38  apue.3e\db\apue_db.h
     文件       24592  2014-03-20 09:38  apue.3e\db\db.c
     文件        1043  2012-07-23 02:22  apue.3e\db\Makefile
     文件         513  2014-03-20 09:38  apue.3e\db\t4.c
     文件         656  2013-04-27 10:18  apue.3e\DISCLAIMER
     目录           0  2014-03-20 09:38  apue.3e\environ\
     文件         680  2014-03-20 09:38  apue.3e\environ\cmd1.c
............此处省略482个文件信息

评论

共有 条评论