11 2012 档案
摘要:http://ibeyond.blog.51cto.com/1988404/373948
阅读全文
摘要:一、新建Qt4 GUI Application,默认选项,一路ok到finish 工程名:BeiJingTime 工程结构: 二、mainwindow.ui设计图形界面 这里为简单起见,只添加一个label控件,将此控件名改为beiJingLabel 三、在mainwindow.h中声明槽函数displayTime(),注意声明加slots!!! #ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>namespace Ui { class MainWindow;}class MainWindow ...
阅读全文
摘要:1、在Sources文件夹的main.cpp文件中添加头文件 #include <QTextCodec> 2、并在main函数中添加下面三行: QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312"));QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312"
阅读全文
摘要:引言TCP通过让接收方指明希望从发送方接收的数据字节数(即窗口大小)来进行流量控制。如果窗口大小为 0会发生什么情况呢?这将有效地阻止发送方传送数据,直到窗口变为非0为止。TCP不对ACK报文段进行确认, TCP只确认那些包含有数据的ACK报文段。如果一个确认丢失了,则双方就有可能因为等待对方而使连接终止:接收方等待接收数据(因为它已经向发送方通告了一个非 0的窗口),而发送方在等待允许它继续发送数据的窗口更新。为防止这种死锁情况的发生,发送方使用一个坚持定时器 (persist timer)来周期性地向接收方查询,以便发现窗口是否已增大。这些从发送方发出的报文段称为窗口探查 (window
阅读全文
摘要:什么是糊涂窗口综合症 当发送端应用进程产生数据很慢、或接收端应用进程处理接收缓冲区数据很慢,或二者兼而有之;就会使应用进程间传送的报文段很小,特别是有效载荷很小。 极端情况下,有效载荷可能只有1个字节;而传输开销有40字节(20字节的IP头+20字节的TCP头) 这种现象就叫糊涂窗口综合症。 发送端引起的糊涂窗口综合症 如果发送端为产生数据很慢的应用程序服务(典型的有telnet应用),例如,一次...
阅读全文
摘要://去除ListView滑到顶部和底部时边缘的黑色阴影:android:fadingEdge="none"//去除拖动时默认的黑色背景:android:cacheColorHint="#00000000"//去除选中时的黄色底色:android:listSelector="#00000000" http://www.oschina.net/code/snippet_232612_10847
阅读全文
摘要:http://bbs.chinaunix.net/thread-3558646-1-1.html 1. 第一步: 确定工具所在的"包" #route –version net-tools 1.6 2. 第二步,到源码下载的网站上搜net-tools 1.6, http://linux.softpedia.com/ 或 www.sourceforge.net
阅读全文
摘要:#include <stdio.h>int main(void){ printf("%d\n", 6); printf("%4d\n", 6); /*至少4位字符宽*/ printf("%03d\n", 6); /*至少3位字符宽,且不足则补0*/ printf("%04d\n", 6); printf("%02x\n", 19); /*至少2位字符宽,16进制输出,不足则补0*/ printf("%f\n", 6); printf("%f\n"
阅读全文
摘要:Bell实验室、通用电气和MIT合作MULTICS(MULTiplexed Infomation and Computing Service,多路复用信息与计算服务),后Bell实验室退出。 Bell实验室只留下Ken Thompson继续研究MULTICS,后他发明精简版MULTICS,即是后来的UNIX。 Thompson和Ritchie(里奇,c语言之父)合作,用c重写UNIX,发表UN...
阅读全文
摘要:http://blog.markloiseau.com/2012/02/get-network-interfaces-in-c/http://www.doctort.org/adam/nerd-notes/enumerating-network-interfaces-on-linux.htmlhttp://www.geekpage.jp/en/programming/linux-network/...
阅读全文
摘要:在调试程序时出现端错误,gdb提示“Program received signal SIGSEGV, Segmentation fault” SIGSEGV 该信号指示进程进行了一次无效内存引用。 SEGV表示段违例(segmentation violation)。
阅读全文
摘要:#include <stdio.h>#include <pthread.h>void *pthread_fun(void *arg){ while (1) { sleep(1); printf("pthread running\n"); } return((void *)0);}int main(){ pthread_t tid; pthread_create(&tid, NULL, p...
阅读全文
摘要:终端执行一个进程,该进程创建一个子进程,当Ctrl+c后,父子进程都退出,因为,父子进程捕捉到退出信号的默认动作就是结束进程。 如果,在子进程中捕捉退出信号,动作改为忽略,则ctrl+c后,父进程退出,子进程不会退出,子进程被进程ID为1的init进程领养。 代码如下: #include <stdio.h>#include <signal.h>int main(){ if (fork() ==...
阅读全文
摘要:http://www.cnblogs.com/chio/archive/2007/11/24/970632.html volatile char a; a=0; while(!a){ //do some things; } do_other(); 如果没有 volatile, do_other()不会被执行。 volatile极易改变的意思。 表示用volatile定义的变量会在程序外被改变,每次都必须从内存中读取,而不能把他放在cache或寄存器中重复使用。 在中断程序中经常会用到。
阅读全文
摘要:头文件:#include <sys/time.h>#include <sys/resource.h>原型:int getpriority(int which, int who);int setpriority(int which, int who, int prio);参数:which为PRIO_PROCESS,则who指定进程ID;which为PRIO_PGRP,则who指定进程组ID;which为PRIO_USER,则who指定用户ID.who为0,代表调用该函数的当前进程ID,进程组ID或用户ID.prio -20---19,一般默认为0,pri越小,优先级越高,
阅读全文
摘要:TCP有个套接字选项TCP_NODELAY设置这个选项可以禁止Nagle算法。 解决的问题: 小包问题,如从键盘输入的一个字符,占用一个字节,可能在传输上造成41字节的包,其中包括1字节的有用信息和40字节的标题数据,这种情况转变成了4000%的消耗。 Nagle算法要求,一个TCP连接上最多只能有一个未被确认的未完成的小分组。
阅读全文
摘要:为什么要有内联函数,即内联函数的作用内联函数是为了避免调用函数的开销。内联函数不是在调用时发生转移,而是在编译时将函数体嵌入到每个内联函数调用处。类似于宏定义,如宏定义:#define ExpressionName(Var1,Var2) ((Var1)+(Var2))*((Var1)-(Var2))但是宏定义并不能进行参数有效性的检查等。所以,可以这么理解,内联函数是宏定义的扩展,消除了宏定义不能进行参数有效性检查等缺点。或者这么理解,编译时,内联函数在调用处展开,以目标代码的增加为代价换取时间上的节省。什么时候用内联函数
阅读全文
摘要:《Unix环境高级编程》初始化一个守护进程的调用,cmd可为守护进程名。void daemonize(const char *cmd){ int i, fd0, fd1, fd2; pid_t pid; struct rlimit r1; struct sigaction sa; /* 设置文件模式创建屏蔽字为0,因为继承得来的文件模式创建屏蔽字可能会拒绝设置某些权限。 */ umask(0); /* 获取最大文件描述符。 */ if (getrlimit(RLIMIT_NOFILE, &r1) < 0) { err_sys("%s...
阅读全文
摘要:1、用户按某些终端键时,引发终端产生的信号。如在终端按Ctrl+c将产生中断信号SIGINT. 2、硬件产生信号,如除数为0,无效的内存引用等。这些条件通常由硬件检测到传给内核,然后内核通知进程。 3、进程调用kill函数可将信号发送给另一个进程或进程组。 4、用户可用kill命令将信号发送给其他进程。 5、当检测到某种软件条件发生时,也可能产生信号。如在网络连接上传来带外数据时产生SIGURG.
阅读全文
摘要:
阅读全文
摘要:如果不计任选字段,TCP首部通常是20字节,封装在IP数据报中。 32位序号 序号用来标识从TCP发端向TCP收端发送的数据字节流,它表示在这个报文段中的的第一个数据字节。如果将字节流看作在两个应用程序间的单向流动,则TCP用序号对每个字节进行计数。序号是32bit的无符号数,序号到达2^32-1后又从0开始。 32位确认序号 确认序号包含发送确认的一端所期望收到的下一个序号。因此,确认序号应当是上次已成功收到数据字节序号加1。只有ACK标志(下面介绍)为1时确认序号字段才有效。 4位首部长度 首部长度给出首部中32bit字的数目。需要这个值是因为任选字段的长度是可变的。 例如...
阅读全文
摘要:实验步骤: 1、server监听; 2、client连接; 3、client发hello good boy; 4、kill 服务器已经连接的socket子进程; 5、client发anotherline. 相关代码UnixTCPServerModify.c UnixTCPClientModify.c
阅读全文
摘要:参考http://hi.baidu.com/qiaoyongfeng/item/1c08243807f95949023edc52wait头文件:#include <sys/types.h>#include <sys/wait.h>原型:pid_t wait(int *status);参数:status用来保存被收集进程退出时的一些状态,如果我们队这个子进程是如何死掉的毫不在意,只是想把这个僵尸进程消灭掉,则可设定status为NULL.返回值:如果成功,wait会返回被收集的子进程的进程ID,如果调用进程没有子进程,调用就会失败,此时wait返回-1,同时errno被置
阅读全文
摘要:脚本/etc/rc.local应用程序ubuntu10.10 在"首选项中"设置"启动应用程序"。ubuntu12.04 桌面右上角设置图标。
阅读全文

浙公网安备 33010602011771号