2026/1/15 16:07:16
网站建设
项目流程
php零基础做网站,局域网中做网站,消息提示怎么做网站,网站建设与管理实训心得进程同步、线程基础与杂项源码解析 进程同步程序 在之前的程序里,多线程间共享计数器很简单,只需将计数器存为全局变量。现在,我们要修改程序,实现不同进程间的同步。 为了让父进程和子进程共享计数器,我们把计数器存于共享内存中,该共享内存由 my-shm 函数分配,代…进程同步、线程基础与杂项源码解析进程同步程序在之前的程序里,多线程间共享计数器很简单,只需将计数器存为全局变量。现在,我们要修改程序,实现不同进程间的同步。为了让父进程和子进程共享计数器,我们把计数器存于共享内存中,该共享内存由my-shm函数分配,代码如下:void * my-shm(size_t nbytes) { void *shared; #if defined(MAP_ANON) shared = mmap(NULL, nbytes, PROT_READ | PROT_WRITE, MAP_ANON | MAP_SHARED, -1, 0); #elif defined(HAVE_DEV_ZERO) int fd; /* memory map /dev/zero */ if ((fd = open("/dev/zero", O_RDWR)) == -1) return (MAP_FAILED); shared = mmap(NULL, nbytes, PROT_READ | PROT_WRITE | MAP_SHARED, fd, 0); close(fd); #else #error cannot determine what type of anonymous shared memory to use #endif return (shared); /* MAP_FAILED on error */ }如果系统支持