一开始,我得向Libuv库和Libuv库开发者以及相关粉丝们道一个歉,对不起,我错怪你们了.深深感到自己的无知,是多么羞愧的事情!!    事情的经过是这样的.    原先按照公司要求,我在开发Windows版的TCP服务器时,使用了Libuv库.正是因为Libuv库的强大,才让我们老大推荐使用.我们老大学识渊博,阅历丰富,他的推荐自然也是很值得使用的.所以我快速学习了一下Libuv库的使用.然后再学习的过程中,稍有了解.同时发现了一个网友phata写的对于Libuv库的包装,让代码写起来更加方…
步入这个行业也好多年了,从来没有定居过一个地方. 看过很多前辈们留下的资料,对后者门(其中还有我)留下很多珍贵的东西. 所以,我要向前辈学习,壮大自己,在学习的同时,不要忘记帮助别人. 对曾经我留下的诸多脚印,说声”对不起“.............…
下载并编译libuv libuv需要自己手动下载源码,并手动编译. 当前目录为:/home/xlz/test/github,在后面,会用$PATH来代替,我的系统的Debian8,64bit. $git clone https://github.com/libuv/libuv.git 即可下载到libuv源码 然后$cd libuv 进入到libuv源码目录下,准备编译. 依次运行如下命令: $ sh autogen.sh $ ./configure $ make $ make check $…
引言 这篇博文可能有点水,主要将自己libuv的学习过程和理解. 简单谈方法. 有点杂. 那我们开始吧. 首先介绍 githup . 这个工具特别好用. 代码托管. 如果不FQ可能有点卡. 但是应该试试. 这里扯一点, githup 对代码水平提高 太重要了.还有一个解决疑难问题的论坛 stackoverflow  http://stackoverflow.com/. 真的屌的不行. 附赠 githup 简易教程, 不用谢   http://www.nowcoder.com/courses/2…
步骤很简单 1 下载最新版的 libuv(地址:https://github.com/libuv 2 安装Git,Python 2.7 ,cmake(这里使用的是 3.11.0-win64-x64 版本)并且添加到环境变量,也就是直接敲命令,git,python,cmake,系统提示让你输入参数 3 使用 Microsoft Visual Studio 2017 (15.4.4 版本)命令行工具进入到文件的解压目录 4 打开科学上网工具,在浏览器中输入 Google,确保能正确访问 Google…
Libevent.libev.libuv三个网络库,都是c语言实现的异步事件库Asynchronousevent library). 异步事件库本质上是提供异步事件通知(Asynchronous Event Notification,AEN)的.异步事件通知机制就是根据发生的事件,调用相应的回调函数进行处理. 事件(Event):事件是异步事件通知机制的核心,比如fd事件.超时事件.信号事件.定时器事件.有时候也称事件为事件处理器(EventHandler),这个名称更形象,因为Handler本…
使用g++编译.运行libuv的demo错误解决 我们通过例子来讲述监视器的使用. 例子中空转监视器回调函数被不断地重复调用,  通过例子我们也可以了解到: 由于设置了监视器, 所以调用 uv_run() 是程序会阻塞, 空转监视器将会在计数器达到设定的值时停止(监视), uv_run() 会退出因为此时程序中没有活动的监视器了. 测试代码如下 #include <stdio.h> #include <uv.h> int64_t counter = ; static void wa…
面试的间隙回头复习了一下node,感觉node就像一个胶带,把V8和libuv粘在了一起. V8毫无疑问,负责解析执行JavaScript,相当于语言层面的桥梁:而libuv则是负责操作系统底层功能的封装,例如基于IOCP的event loop.file system.non-blockiong network等.简单来说node将两者结合在一起,赋予JS操作底层方法的能力,扩大了这门语言的应用面. 其实之前一直在避开这个库,因为有点难……至于为什么突然又搞,因为之前已经把所有比较上层和简单的模…
libuv 简单使用 来源:https://zhuanlan.zhihu.com/p/50497450 前序:说说为啥要研究libuv,其实在很久之前(大概2年前吧)玩nodejs的时候就对这个核心库非常感兴趣,不过由于当年水平确实比较菜,大概看了看之后实在没能静下心来看下去.18年初的时候,360直播云官网做了React同构,那个时候我问自己如果真有百万并发,每天亿级的访问量有没有信心保证中间node层一次不挂(或者不出任何事故),其实我到今天仍然是没有足够底气的.原因有两个吧:一是对node…
本人是在研究linux下socket TCP/IP通讯时,用到了一些linux下的API,比如socket, connect, bind,listen, accept等等,简单写个点对点的通讯,直接用这些API,再配合Linux下的事件处理机制,或多线程机制,应该都是可以实现的.这里我们就需要考虑的如下一些问题: 1.多个客户端并发处理时,怎么才能将服务端的负担降到最低 2.我的应用用到多事件处理,怎么来管理我拉事件 -----可以设计一个队列来管理 3.线程与事件如何并行使用,怎么防止事件的I…