摘要: 网络编程面试题 1、tcp和udp的区别 TCP 传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。 UDP 用户数据报协议,是 阅读全文
posted @ 2018-04-19 12:48 LloydDracarys 阅读(242) 评论(0) 推荐(0)
摘要: 在Linux下最好pthread_cond_signal放中间 pthread_cond_signal即可以放在pthread_mutex_lock和pthread_mutex_unlock之间,也可以放在pthread_mutex_lock和pthread_mutex_unlock之后,但是各有各 阅读全文
posted @ 2018-04-19 12:47 LloydDracarys 阅读(424) 评论(0) 推荐(0)
摘要: 线程和进程各自有什么区别和优劣呢? 进程是资源分配的最小单位,线程是程序执行的最小单位。 进程有自己的独立地址空间,每启动一个进程,系统就会为它分配地址空间,建立数据表来维护代码段、堆栈段和数据段,这种操作非常昂贵。而线程是共享进程中的数据的,使用相同的地址空间,因此CPU切换一个线程的花费远比进程 阅读全文
posted @ 2018-04-19 12:46 LloydDracarys 阅读(92) 评论(0) 推荐(0)
摘要: 一、死锁的定义 多线程以及多进程改善了系统资源的利用率并提高了系统 的处理能力。然而,并发执行也带来了新的问题——死锁。所谓死锁是指多个线程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。 下面我们通过一些实例来说明死锁现象。 先看生活中的一个实例,2个人一起吃饭但是 阅读全文
posted @ 2018-04-19 12:46 LloydDracarys 阅读(152) 评论(0) 推荐(0)
摘要: 多线程编程之读写锁 Pthread是 POSIX threads 的简称,是POSIX的线程标准。 pthread读写锁把对共享资源的访问者分为读者和写者,读者只对共享资源进行读访问,写者只对共享资源进行写操作。在互斥机制,读者和写者都需要独立独占互斥量以独占共享资源,在读写锁机制下,允许同时有多个 阅读全文
posted @ 2018-04-19 12:45 LloydDracarys 阅读(127) 评论(0) 推荐(0)
摘要: 多线程编程之线程私有数据 Pthread是 POSIX threads 的简称,是POSIX的线程标准。 线程同步从互斥量【C/C++多线程编程之六】pthread互斥量,信号量【C/C++多线程编程之七】pthread信号量,条件变量【C/C++多线程编程之八】pthread条件变量,读写锁【C/ 阅读全文
posted @ 2018-04-19 12:45 LloydDracarys 阅读(232) 评论(0) 推荐(0)
摘要: socket阻塞与非阻塞,同步与异步 作者:huangguisu 1. 概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式: 同步/异步主要针对C端: 同步: 所谓同步,就是在c端发出一个功能调用时,在没有得到结果之 阅读全文
posted @ 2018-04-19 12:44 LloydDracarys 阅读(93) 评论(0) 推荐(0)
摘要: linux c 网络编程 转载 2017年09月09日 23:58:46 标签: Linux / 网络 OSI七层网络模型由下至上为1至7层,分别为: 物理层(Physical layer),数据链路层(Data link layer),网络层(Network layer),传输层(Transpor 阅读全文
posted @ 2018-04-19 12:44 LloydDracarys 阅读(265) 评论(0) 推荐(0)
摘要: 博客集:https://blog.csdn.net/zqixiao_09/article/category/6032051 多线程基础:https://blog.csdn.net/zqixiao_09/article/details/50477993 同步与互斥概念:https://www.cnbl 阅读全文
posted @ 2018-04-19 12:44 LloydDracarys 阅读(151) 评论(0) 推荐(0)
摘要: 首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。 不管是文件,还是套接字,还是管道,我们都可以把他们看作流。 之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们可以往流写入数据。现在假定一个情形,我们需要从流中读数 阅读全文
posted @ 2018-04-19 12:43 LloydDracarys 阅读(155) 评论(0) 推荐(0)