xs - C多线程网络库


LGPL
Windows
C/C++

软件简介

基于C多线程网络库,欢迎大家使用,例子在代码example目录下,以后我会再增加一些例子。

文档暂时没有,有问题请邮件我:-)

获取代码:https://github.com/xueguoliang/xs

xs致力于1)多线程网络库,如果你的程序要需要网络通信,而且不希望多进程,那这个库可能适合你。目前xs支持linux和windows,linux采用epoll,windows下是select,不好意思对iocp不熟悉,期待你们有贡献。

2)尽量将接口整的简单

3)线程工作采用推动式

4)支持定时器(用最小堆实现)

5)尽量效率高,所以尽量不用锁

使用库的方法,跟android有点像:

1.在xs/src中建立一个目录,你的工程目录,比如aaa

2.在目录中写一个xs.mk(空文件即可,但是没有是不行的)

3.再写你的.c文件,

4.完成之后,回到xs/src,输入make,你的工程将会被编译,如果你的代码没有编译错误,将会在xs/src目录下出现aaa.bin

另外一种办法,你将xs库当成普通动态库使用,这样的话,你的某个.c文件要加上两个全局变量

char* g_mem_files[1];

int g_mem_file_count = 0;

这两个变量是我的Makefile生成的,如果你不用我的makefile,那就得自己给定义个

最后这个库我在linux,windows,android,嵌入式linux等平台下都测试过,稍微改改makefile(在windows下直接用qt编译的)就可以使用,记得mail我哦