1、setsockopt()作用及简介socket关闭之后并不会立即收回,而是要经历一个TIME_WAIT的阶段。此时对这个端口进行重新绑定就会出错。要想立即绑定端口,需要先设置SO_REUSEADDR.或者在closesocket的时候,使用setsockopt设置SO_DONTLINGER。才会...
分类:
系统相关 时间:
2014-10-17 00:22:43
阅读次数:
366
1.天下没有不散之宴席,数据传输结束后,现在服务器和客户机都处于ESTABLISHED状态,客户机想要和服务器断开连接,就会向服务器发送一个标志位FIN=1的报文(FIN=1表示请求断开连接)这时客户机就处于FIN—WAIT—1状态
2.当服务器收到请求断开的数据包以后立即发出确认,确认号acknowledge number等于序列号加一,标志位ACK=1,此时服务器进入CLOSE_WAIT状态...
分类:
其他好文 时间:
2014-10-16 19:28:12
阅读次数:
148
一.time_wait状态解释1.客户端与服务器端TCP连接完闭,关闭SOCKET后,服务器端连接的端口号即为time_wait状态。linux下高并发的nginx,apache,lvs,squid等服务器生产环境下,TCP的time_wait套接字数量经常达到2,3W,此时服务器很容易被拖死或影响业务二.解决方法1.获取TIME_WA..
分类:
其他好文 时间:
2014-10-16 14:10:03
阅读次数:
183
pthread_cond_wait()使用、执行过程及一些问题 LINUX环境下多线程编程肯定会遇到需要条件变量的情况,此时必然要使用pthread_cond_wait()函数。但这个函数的执行过程比较难于理解。 pthread_cond_wait()的工作流程如下(以MAN中的EXA...
分类:
其他好文 时间:
2014-10-16 13:01:32
阅读次数:
240
[root@centosTestshelltest]#./forever2.sh
2014年10月15日星期三03:36:24CST
2014年10月15日星期三03:36:26CST
^Z(--注:ctrl+z)
[1]+Stopped./forever2.sh
[root@centosTestshelltest]#fg%1
./forever2.sh
2014年10月15日星期三03:36:32CST
2014年10月15日星期三03:36:34CS..
分类:
系统相关 时间:
2014-10-16 03:48:12
阅读次数:
512
磁盘阵列被越来越多地使用到各种应用系统中,开始只是简单地作为某台主机或服务器的附加外置存储设备,主要用于扩展单台主机或服务器的永久存储空 间,一般通过SCSI或其它接口与主机直接相连;后来随着存储网络技术,尤其是光纤通道(Fibre Channel)技术的发展,磁盘阵列通过光纤通道接口接入到存储区域...
分类:
其他好文 时间:
2014-10-15 23:17:41
阅读次数:
260
#!/bin/bash
#———————————————————————————–?
#?此例子说明了一种用wait、read命令模拟多线程的一种技巧?
#?此技巧往往用于多主机检查,比如ssh登录、ping等等这种单进程比较慢而...
分类:
编程语言 时间:
2014-10-15 11:17:51
阅读次数:
205
python检测linux下运行的进程#-*-coding:utf8-*-
importsubprocess
importsys
status_ok=0
status_critical=2
defc(d_name):
cmd=‘ps-ef|grep%s|grep-v"grep"‘%d_name
p=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE)
ifp.wait()==0:
val=p.stdout.read()
ifd_name..
分类:
编程语言 时间:
2014-10-13 21:12:07
阅读次数:
244
重点掌握
/*
* wait 和 sleep 区别?
* 1.wait可以指定时间也可以不指定
* sleep必须指定时间
* 2.在同步中,对CPU的执行权和锁的处理不同
* wait释放执行权,释放锁 sleep释放执行权,不释放锁
*/
//同步里具备执行资格的线程不止一个,但是能得到锁的只有一个,所以能执行的也只有一个
一、停止线程的方式
...
分类:
编程语言 时间:
2014-10-13 18:59:27
阅读次数:
229
1、这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。
sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用了b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。
2、锁: 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。
sleep不出让系...
分类:
编程语言 时间:
2014-10-13 18:41:27
阅读次数:
207