
重用代码之LinuxC&C++
文章平均质量分 78
李亚超
自强不息,厚德载物;
专注于Deep Learning, Machine Translation, NLP;
喜欢写关于Linux C/C ,C#,算法,自然语言处理的技术博客,欢迎观临;
展开
-
Unix环境,产生单实例进程方案
<br /> <br /> 在一些情况下,一个进程只能产生一个实例来执行。Unix环境,提供了文件-记录锁(file- and record-locking)机制,提供了事项单实例进程的基本解决方案。<br /> 假如,一个进程在开始运行时,生成了一个文件,并且,对整个文件上锁,并且,只有一个这样的写锁允许生成。<br /> 如果,后续的进程要试图产生写锁,会导致失败。这暗示了,前面已经有实例运行了。<br /> 下面一个判断是否有实例运行的方法。每个实例,都会试图生成一个文件(/v原创 2011-03-10 21:19:00 · 2602 阅读 · 0 评论 -
一个Linux守候进程例子
<br />其他程序可以调用void daemon_init(const char * cmd)方法,来初始化当前进程为守候进程<br /> #include<stdio.h> #include<unistd.h> #include<sys/resource.h> #include<fcntl.h> #include<signal.h> #include<syslog.h> void daemon_init(const char * cmd); int main(int argc, char原创 2011-03-10 19:32:00 · 1395 阅读 · 0 评论 -
Unix网络字节顺序及其判断
一 对于一个16字节的数据,比如0x0102,在内存中可以有两个方式来存贮。一种是0x0102,一种是0x0201,前者成为小段对其,后者成为大端对齐。 在网络编程中,需要考虑到网络数据的存储顺序问题,这是个很重要的问题。因为客户机的数据存储顺是不统一好的,比如Linux,Windows用的是小段对齐,BSD,AIX等Unix系统用的时大端对齐。如果要在不同容的许同上交换数据就必须考虑这个数据格式的问题。 在Linux/Unix中,通常的数据在堆中存储原创 2011-04-08 16:41:00 · 1749 阅读 · 0 评论