socket中close和shutdown的区别
int close(s);
int shutdown(s,how)
区别1
进程中close关闭一个socket,将终止进程对这个socket的任何的操作,但是使用shutdown可以选择的关闭关闭的方式,包括SHUT_RD(读),SHUT_WR(x写),SHUT_RDWR(读写) 三种方式。
区别2
在多个进程共享socket时候,一个进程调用close只会使计数减一,直到所有的进程都调用的了colse,这个socket才会被释放,
如果一个进程调用shutdown,那个这个所有的进程将不能再使用读、写或者读写。
总结区别2 ,就是close不会影响其他进程对socket的使用,shutdown会影响其他进程对socket的使用。
阅读(1927) | 评论(0) | 转发(0) |