从linux了解世界
发布时间:2016-07-30 14:13:09
同一进程下的不同线程共享数据段,linux下的多线程遵循posix线程借口,称为pthread。编写linux下的多线程程序,需要使用pthread.h的头文件,连接时使用libpthread.a库。int pthread_create(pthread_t *tidp,const pthread_attr_t *attr,(void*)(*start_rtn)(void*),void *arg);tidp:线程id,不是用来输入id,而是用来.........【阅读全文】
发布时间:2016-07-30 14:09:57
管道通信int pipe(int pipefd[2]);返回值 成功 0 失败 -1。管道两端可分别用描述字pipefd[0]以及pipefd[1]来描述,需要注意的是,管道的两端是固定了任务的。即一端只能用于读,由描述字pipefd[0]表示,称其为管道读端;另一端则只能用于写,由描述字pipefd[1]来表示,称其为管道写端。只能用在父子进程。先pipe再fork。.........【阅读全文】
发布时间:2016-07-30 13:59:43
进程控制(系统调用)pid_t getpid(void);pid_t getppid(void);pid_t fork( void);pid_t 是一个宏定义,其实质是int 被定义在#include<sys/types.h>中。返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程ID;否则,出错返回-1fork函数将运行着的程序分成2个(几乎)完全一样的进程,每个进程都启动.........【阅读全文】
发布时间:2016-07-30 13:52:59
time_t time(time_t * timer) 在头文件将long定义为time_t.获得日历时间(从1970年1月1日零点到现在的秒数)structtm *gmtime(const time_t *timer);格林威治时间structtm *localtime(const time_t *timer);本地时间char*asctime (const struct tm * timer);tm结构体中储存的时间转换为字符串字符串格式返回char*c.........【阅读全文】
发布时间:2016-07-30 13:48:11
系统调用关于函数的信息可用man 2 名字(2代表内核可以调用的函数和工具),尤其看要添加那些头文件int creat (const char *pathname,mode_t mode);成功返回0,失败返回-1int open(const char *pathname, int flags, mode_t mode);成功返回文件描述值fd,失败返回-1flag宏定义:O_RDONLYO_WRONLYO_RDWRO_CREAT不.........【阅读全文】