随笔分类 - Linux shell
摘要:原文:http://www.cnblogs.com/xuxm2007/archive/2011/04/01/2002162.html http://hi.baidu.com/hcq11/blog/item/9f5bfc6e696209d680cb4a25.html http://hi.baidu.c...
阅读全文
摘要:原文:http://www.cnblogs.com/eoiioe/archive/2008/09/20/1294681.html .tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————...
阅读全文
摘要:有五种映射存在- 用于普通模式: 输入命令时。- 用于可视模式: 可视区域高亮并输入命令时。- 用于操作符等待模式: 操作符等待中 ("d","y","c" 等等之后)。见下: |omap-info|。- 用于插入模式: 也用于替换模式。? 用于命令行模式: 输入 ":" 或 "/" 命令时。下表是...
阅读全文
摘要:先看下"_exit"和"exit": exit被调用时,将冲刷所有的标准I/O流,关闭所有打开的文件描述符。在 传统实现中,同时也将关闭标准I/O流。即表示标准输出FILE对象的相关存储区将被清0。而_exit不会执行这些操作。 由于父子进程共享同一地址空间,当父进程恢复运行并调用...
阅读全文
摘要:为什么使用vfork()? 希望父子进程执行不同的代码。例如: 网络服务程序中,父进程等待客户端的服务请求,当请求达到时,父进程调用fork,使子进程处理该次请求,而父进程继续等待下一个服务请求到达。 vfork与fork的函数原型相同,用于创建新进程,而该新进程的目的是exec一...
阅读全文
摘要:n fork函数创建一个新进程,新进程被称为子进程 n 函数原型:pid_t fork(void) n 返回值: fork函数调用一次,但...
阅读全文
摘要:n setjmp和longjmp函数实现函数之间的跳转(需包含头文件" setjmp.h "): 函数原型:int setjmp(jmp_buf env); void longjmp(jmp_buf env, int val); setjmp函数用于设...
阅读全文
摘要:一.为了适应需要,修改了"CLEvent": 头文件: View Code #ifndef CLEVENT_H#define CLEVENT_H#include "CLStatus.h"#include "CLMutex.h"#include "CLConditionVariable...
阅读全文
摘要:先上代码,主要是线程类"CLThread": 头文件: View Code #ifndef CLTHREAD_H#define CLTHREAD_H#include #include "CLExecutive.h"#include "CLStatus.h"#include "CLEv...
阅读全文
摘要:POSIX.1说明:pthread_cond_broadcast等函数的调用无需考虑调用线程是否拥有锁,并建议在在lock和unlock以外的区域调用。为什么? §假设系统中有线程 1和线程 2:线程 1获取 mutex,在进行数据处理的时候,线程 ...
阅读全文
摘要:1. 首先pthread_cond_wait 的定义是这样的 The pthread_cond_wait() and pthread_cond_timedwait() functions are used to block on a condition variable. They are ca...
阅读全文
摘要:测试(其余代码相同): View Code #include #include #include "CLThread.h"#include "CLExecutiveFunctionProvider.h"#include "CLMutex.h"#include "CLCriticalS...
阅读全文
摘要:本节在上一节的基础上,利用局部变量的构造和析构函数的特性,封装了对临界区的加锁和解锁操作,保证了程序(线程)在异常终止或中途退出的情况下也能正确解锁,从而不会出现死锁。 增加的临界区类"CLCriticalSection",其它源代码同上一节。 头文件: View Code #ifn...
阅读全文
摘要:详见百度百科”互斥锁“
阅读全文
摘要:在“Linux学习之线程封装五:基于接口的封装”的基础上,增加了协调器类“CLCoordinator”。 业务逻辑提供者类“CLCoordinator”,与“五”一样。 执行体类“CLExecutive”,将类的和构造函数的CLExecutiveFunctionProvider类型成员换成了CLCo...
阅读全文
摘要:三个方面:业务逻辑,执行体,协调器(装配前两者) View Code #include#include#include#include#include"CLStatus.h"#include"CLLog.h"using namespace std;class CMyFunction{...
阅读全文
摘要:C/C++有以下几种流对象的: 型别 名称 作用 istream cin 从input通道读入数据 ostream cout 将数据写到标准output通道 ostream cerr 将错误信息写到标准error通道 ostream clog 将日志信息写到标准logging通道 wistream ...
阅读全文
摘要:本例将执行体从线程类中抽象出来,形成一个接口,用户可根据需要派生出不同的执行体(线程或进程),从而使得不同的执行体(线程或进程)能以自己想要的方式运行。 执行体类(接口)"CLExecutive": 头文件: View Code #ifndef CLEXECUTIVE_H#defin...
阅读全文
摘要:业务逻辑提供者类"CLThreadFunctionProvider" 头文件: View Code #ifndef CLTHREADFUNCTIONPROVIDER_H#define CLTHREADFUNCTIONPROVIDER_H#include "CLStatus.h"cla...
阅读全文
摘要:线程类"CLThread" 头文件: View Code #ifndef CLTHREAD_H#define CLTHREAD_H#include #include "CLStatus.h"class CLThread{public: CLThread(); virtua...
阅读全文
浙公网安备 33010602011771号