开发使用多线程过程中,不可避免的会出现多个线程同时操作同一块共享资源,当操作全部为读时,不会出现未知结果,一旦当某个线程操作中有写操作时,就会出现数据不同步的事件.而出现数据混乱的原因:资源共享(独享资源则不会)调试随机(对数据的访问会出现竞争)线程间缺少必要的同步机..
分类:
编程语言 时间:
2016-06-18 01:30:50
阅读次数:
260
开发使用多线程过程中,不可避免的会出现多个线程同时操作同一块共享资源,当操作全部为读时,不会出现未知结果,一旦当某个线程操作中有写操作时,就会出现数据不同步的事件.而出现数据混乱的原因:资源共享(独享资源则不会)调试随机(对数据的访问会出现竞争)线程间缺少必要的同步机..
分类:
编程语言 时间:
2016-06-17 00:53:40
阅读次数:
226
开发使用多线程过程中,不可避免的会出现多个线程同时操作同一块共享资源,当操作全部为读时,不会出现未知结果,一旦当某个线程操作中有写操作时,就会出现数据不同步的事件.而出现数据混乱的原因:资源共享(独享资源则不会)调试随机(对数据的访问会出现竞争)线程间缺少必要的同步机..
分类:
编程语言 时间:
2016-06-16 08:05:57
阅读次数:
206
开发使用多线程过程中,不可避免的会出现多个线程同时操作同一块共享资源,当操作全部为读时,不会出现未知结果,一旦当某个线程操作中有写操作时,就会出现数据不同步的事件.而出现数据混乱的原因:资源共享(独享资源则不会)调试随机(对数据的访问会出现竞争)线程间缺少必要的同步机..
分类:
编程语言 时间:
2016-06-15 00:06:19
阅读次数:
291
linux网络编程之socket(十):shutdown 与 close 函数的区别 socket中关闭套接字的函数close和shutdown区别 #include <unistd.h> int close(int fd); close 关闭了自身数据传输的两个方向。关闭本进程的socket id ...
分类:
其他好文 时间:
2016-06-14 13:42:53
阅读次数:
247
一 原始套接字 原始套接字(SOCK_RAW)是一种不同于SOCK_STREAM、SOCK_DGRAM的套接字,它实现于系统核心。然而,原始套接字能做什么呢?首先来说,普通的套接字无法处理ICMP、IGMP等网络报文,而SOCK_RAW可以;其次,SOCK_RAW也可以处理特殊的IPv4报文;此外, ...
分类:
系统相关 时间:
2016-06-12 16:51:36
阅读次数:
185
从别人的博客中转载过来了这一篇文章,经过重新编辑排版之后展现于此,做一个知识点保存与学习。 select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型: int select(int maxfd,fd_set *rdset,fd ...
分类:
系统相关 时间:
2016-06-11 18:50:30
阅读次数:
200
建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示: 其中三次握手即建立连接 四次挥手则为关闭连接 TCP连接的11种状态 客户端独有的:(1)SYN_SENT (2)FIN_WAIT1 (3)FIN_WAIT2 (4)CLOSING (5)TIME_WAIT 。 服务器独 ...
分类:
系统相关 时间:
2016-06-11 18:43:27
阅读次数:
218
1.信号简介linux系统中无时无该产生着信号.信号在linux上又称软件中断,用来通知进程发生了异步事件。在软件层次上是对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是进程间通信机制中唯一的异步通信机制,一个进程不必..
分类:
系统相关 时间:
2016-06-10 23:16:24
阅读次数:
350