heqingliang's Blog


  • 首页

  • 归档

非阻塞式I/O

发表于 2017-12-27

套接字的默认状态是阻塞的。这就意味着当发出一个不能立即完成的套接字调用时,其进程将投入睡眠,等待相应操作完成。可能阻塞的套接字调用可分为以下四类。

阅读全文 »

I/O复用:epoll

发表于 2017-12-26

epoll是Linux内核为处理大批量文件描述符而做了改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。

阅读全文 »

I/O复用:poll

发表于 2017-12-25

poll 函数

poll提供的功能与select类似,不过在处理流设备时,它能够提供额外的信息。

阅读全文 »

I/O复用:select

发表于 2017-12-24

在实现TCP的echo服务的那节中,客户端同时处理两个输入:标准输入和TCP套接字。会遇到这样的问题:客户在阻塞于(标准输入上的)fgets调用期间,服务器进程会被杀死,服务器TCP虽然正确地给客户TCP发

阅读全文 »

线程池

发表于 2017-12-22

上文中使用了预先派生一个子进程池来处理客户端的连接,这会比为每个客户端连接现场派生一个子进程快的得多。但是进程的创建和调度比起线程来说,还是比较慢的。

阅读全文 »

进程池

发表于 2017-12-21

在并发服务器调用fork派生一个子进程来处理每个客户端,这使得服务器能够同时为多个客户端服务,每个进程处理一个客户端。客户端数目的唯一限制是操作系统能拥有多少子进程的限制。

阅读全文 »

多线程:并发服务器

发表于 2017-12-17

在多进程并发服务器中:父进程accept一个连接,fork一个子进程,该子进程处理与该连接客户端之间的通信。多进程会存在下面的问题:

阅读全文 »

多进程: 并发服务器

发表于 2017-12-16

使用TCP客户/服务器程序实现echo服务:

  1. 客户端从标准输入读入一行文本,并发送给服务器。
  2. 服务器从网络输入中读入这行文本,并返回给客户端。
  3. 客户端从网络输入中读入这行文本,并显示在标准输出上。
阅读全文 »

socket编程

发表于 2017-12-15

socket是进程通讯的一种方式,即调用这个网络库的一些API函数实现分布在不同主机的相关进程之间的数据交换。在TCP/IP网络应用中,通信的两个进程间相互作用的主要模式是客户/服务器(Client/Server, C/S)模式,即客户向服务器发出服务请求,服务器接收到请求后,提供相应的服务。

阅读全文 »

高德地图Android SDK的使用

发表于 2017-12-07

高德地图 Android SDK 是一套地图开发调用接口,开发者可以轻松地在自己的Android应用中加入地图相关的功能,包括:地图显示(含室内、室外地图)、与地图交互、在地图上绘制、兴趣点搜索、地理编码、离线地图等功能。同时也提供也定位SDK、和导航SDK。

阅读全文 »
1…567
heqingliang

heqingliang

曾梦想仗剑走天涯 看一看世界的繁华 年少的心总有些轻狂 如今你四海为家 曾让你心疼的姑娘 如今已悄然无踪影

63 日志
© 2019 heqingliang
由 Hexo 强力驱动
|
主题 — NexT.Mist v5.1.3