前辈您好,小弟最近在学习网络编程,对socket的non_blocking属性有了一些困惑,困惑于IOCP,boost::asio这些模型实现时对blocking/non_blocking的socket有什么区别,然后在网上搜索相关解释,发现没有太明确的解释,在找解释的时候发现同步,异步,阻塞,非阻塞这些概念更加混乱,各说各的,瞬间感觉头更大了。不知陈前辈能否写一篇分析异步IO实现和解释这些网络名词相关的文章以正视听呢? 非常感谢。 回复
博主你好,我是你的友链 狂Shell–Happy Hacking的博主,博客链接从 http://www.crazyshell.org/blog 更改为 http://www.crazyshell.org/ 能否更正下. 谢谢. 回复
大神阿,很喜欢看你的博客。学到了很多。 另外有个问题,想请教你一下,如果有时间,拜托回复一下。 我写了一个动态共享库(.so)。 现在想知道这个共享库在被程序调用过程中,总共占用了多少内存。 所以写了个sample,调用了这个.so文件。 在linux下运行了这个程序。 然后查看了linux下的/proc/pid/smaps这个文件。 看起来好像有显示其内存占用。 内容如下: 80000000-80115000 r-xp 00000000 b3:01 16648 /system/lib/libsample.so Size: 1108 kB Rss: 592 kB Pss: 592 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 592 kB Private_Dirty: 0 kB Referenced: 592 kB Swap: 0 kB KernelPageSize: 4 kB MMUPageSize: 4 kB 80115000-80119000 rw-p 00115000 b3:01 16648 /system/lib/libsample.so Size: 16 kB Rss: 16 kB Pss: 16 kB Shared_Clean: 0 kB Shared_Dirty: 0 kB Private_Clean: 0 kB Private_Dirty: 16 kB Referenced: 16 kB Swap: 0 kB KernelPageSize: 4 kB MMUPageSize: 4 kB 想请问一下,这显示的size,rss值,可以就当作这个so文件运行时的内存占用么? 或者有其他的方法监视其内存占用量。 如果可以,请回复到我的邮箱: [email protected] 谢谢。 回复
#include <stdio.h> #include <string.h> #include <iostream> using namespace std; class C { public: int a; char b; static int c; }; int C::c = 2; int main(){ C c; printf(“&C::c = %p, &c.c = %p\n”, &C::c, &c.c); cout << &C::c << endl; printf("&C::a = %d, &C::b = %d\n", &C::a, &C::b); cout << "&C::a = " << &C::a << " &C::b = " << &C::b << endl; printf("&c.a = %p, &c.b = %p\n", &c.a, &c.b); cout << "&c.a = " << &c.a << " &c.b = " << (void*)&c.b << endl; getchar(); return 0; } 我写了这样一段代码,我想问一下,为什么cout &C::c的时候结果是正确的(指针),而cout &C::a和&C::b结果都是1呢?如果可以,请回复到我的留下的邮箱,谢谢 回复
你的博客文章一直很不错, 的确是用心。 今天看了你关于review的文章, 觉得很有收货。 很多时候,我也碰到你在阿里的境遇:很多人反对,不愿意改变。但是我没你这样的能力,有理有据的去推进你认为对的理念。 你的这篇文章给我很多支持和信心。 另外,关于review,可否提供一个参考书目以供我学习。 谢谢。 回复
JDK8 中的 Interface 可以加default方法,感觉和Abstract class有些类似。有人说还是有区别,因为Abstract class不能多重继承。 我弱弱的想,那能不能不改interface,而是让Abstract class可以多重继承,不是达到现在同样的效果了么? 没想明白,如果可以,能否请您开贴给大家梳理下? 回复
现在重新开始进行IOS的开发,当然了之前好久没有进行开发了,(虽然是计科系科班出身,当然了个人还是有些技术控的,可以说重回正道了, 看到李开复老师的那本书后,感觉随心吧,其他的就不太关注了。) C语言,数据结构很早就用过, 只是多年没有使用了。(在linux上安装了相关的工具, vim,插件开发C语言,编译工具,调试工具还时相当丰富的。基本语言练习了一下,指尖代码跳跃的感觉有了一些, 为何大家说时码农,终于有感觉了。。就就是自己在种田呀。另外专门看了一本国外翻译过来的书籍,其实是讲解计算机原理,采用c语言来写的,从编译,到机器代码,以及编译过程的符号表,链接,重定位等等将的相当有技术实力, 比当初大学里面学习的,就太深刻了。) object -c 看到大家推荐,绿橙子的书早就看完了, 现在看橙橘子的那本书, 大约看完一半了。。有些跳着看。。 书是写的比较细致, 各个章节,和对应的代码都不错。 是个学习的好材料。。可能本人比较着急,跳着看了。间隔着看其他的书籍,和相关博客。。重新起航,到了朋友的一家公司,去学习做IOS开发的,当然了免费全程参与。其他的不多考虑了。(主要是能够参与到项目中,能够提高快一些,其实有c基础,obj-c无非是多一些语法,上手还是很快的) 当然了,在目前互联网比较普及的今天,学习查阅资料都很方便,比较起当初毕业的时候,连电脑都很罕见的,更别说互联网了, 我当时在研究所的时候当时都是拨号上网,公司提供的资源了。。 回复
昨天看了一遍博客,刚知道这里,哈哈,写了《…Makefile》的牛逼博主! 我是菜鸟,想问下,这个网站有类此CSDN/开源中国的手机客户端吗? 如果没有,用手机怎么看? 在手机上看好麻烦!谢谢啦,有个好的中下午! 回复
因为最近在学习vim,所以找到了您的网站,感觉您的网站非常有用 但是我在给我的vim安装插件时遇到了一个难题,由于英语不太好,所以github的内容可能有点没看懂 因为某个插件似乎对vim-pathogen有依赖,所以我就利用Vundle来托管安装vim-pathogen 但是当vim-pathogen的文件下载好后,我按照着他的说明在.vimrc中添加语句 execute pathogen#infect() 重启vim却发现vim检测到这个语句出错了 错误提示如下 Error detected while processing /home/joshua/.vimrc: line 124: E117: Unknown function: pathogen#infect E15: Invalid expression: pathogen#infect() github上另外两个预计因为以前的需要已经加入到这个语句之前 请问这个问题应该如何解决? 非常感谢您抽出时间回答我的问题 回复
酷哥,你好,希望你能看到我的留言啊,我最近在学习c语言指针的时候,经常性的遇到“段错误(核心已转存)”,遇到这样的问题,我真是束手无策,用gdb调试只能发现错误的那一行,但是不知道怎么改,请允许我贴一段代码, #include “stdio.h” /*将字符串ct中最多N个字符复制到字符串s中,并返回s,如果t中少于n个字符,则用”填充*/ char *strncpy_1(char *s,const char *ct,int n); void main(){ char *s=”0″; const char *ct=”abc”; char *m; m=strncpy_1(s,ct,1); printf(“%s\n”,m); } /* const char *p表示:指针p指向的字符类型的值是不变的 */ char *strncpy_1(char *s,const char *ct,int n){ /* char *p; p=s; while(*ct){ *s=*ct; –n; if(n0){ *s++=*ct++; } while(n–>0){ *s++=”; } } 在GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04下调试*s++=*ct++;这一行报错“Program terminated with signal SIGSEGV, Segmentation fault.”,浩哥,遇到这种情况,该如何入手处理呢?烦请回复下啊 回复
不好意思,发现复制粘贴的代码有问题,我竟然没找到有插入代码的插件,就只能手打了 #include “stdio.h” char *strncpy_1(char *s,const char *ct,int n); void main(){ char *s=”0″; const char *ct=”abc”; char *m; m=strncpy_1(s,ct,1); printf(“%s\n”,*m); } char *strncpy_1(char *s,const char *ct,int n){ while(*ct&&n–>0){ *s++=*ct++; } while(n–>0){ *s++=”; } } 回复
您好,最近遇到一个关于商品搜素的问题想请教一下。 目前在做一个电子商务的项目,在商品搜素这块感觉比较头痛,比如搜素“手机”,不能带出“手机配件”的商品。这个用模糊匹配显然无法满足要求。京东和淘宝都可以搜出正确的结果。 本来以为可以使用全文检索来实现,但是了解了一下发现做到精确匹配还是很难,想请教下搜素这里面涉及的主要技术点是哪些。 您的微博粉丝 , 谢谢 回复
没有任何所谓的思想是可以盲目崇拜的,博主就陷入了这种盲目崇拜。盲目崇拜,会令人神智不清,令人愚昧无知,令人看不到事实。 推介博主看完这本书(如果早就看过这本书,那就真是不好的消息) http://pan.baidu.com/s/1dD28rG9 消除盲目崇拜 回复
你好,我看到你的《编程能力与编程年龄的关系》这个文章 我很赞同。可惜我现在年龄不大(16)岁 还是新手 希望能像前辈一样走下去
奇怪,我用穷北这个名字注册不行,说是里包含有无效字符 ,郁闷,为啥呀?
您好,刚开始使用vim开发能否给我发一份您vim的配置文件?只有字体高亮等显示的配置即行,谢谢
前辈您好,小弟最近在学习网络编程,对socket的non_blocking属性有了一些困惑,困惑于IOCP,boost::asio这些模型实现时对blocking/non_blocking的socket有什么区别,然后在网上搜索相关解释,发现没有太明确的解释,在找解释的时候发现同步,异步,阻塞,非阻塞这些概念更加混乱,各说各的,瞬间感觉头更大了。不知陈前辈能否写一篇分析异步IO实现和解释这些网络名词相关的文章以正视听呢?
非常感谢。
博主你好,我是你的友链 狂Shell–Happy Hacking的博主,博客链接从 http://www.crazyshell.org/blog 更改为 http://www.crazyshell.org/ 能否更正下. 谢谢.
一直都有在关注您的博客, 好久没见你更新了
大神阿,很喜欢看你的博客。学到了很多。
另外有个问题,想请教你一下,如果有时间,拜托回复一下。
我写了一个动态共享库(.so)。
现在想知道这个共享库在被程序调用过程中,总共占用了多少内存。
所以写了个sample,调用了这个.so文件。
在linux下运行了这个程序。
然后查看了linux下的/proc/pid/smaps这个文件。
看起来好像有显示其内存占用。
内容如下:
80000000-80115000 r-xp 00000000 b3:01 16648 /system/lib/libsample.so
Size: 1108 kB
Rss: 592 kB
Pss: 592 kB
Shared_Clean: 0 kB
Shared_Dirty: 0 kB
Private_Clean: 592 kB
Private_Dirty: 0 kB
Referenced: 592 kB
Swap: 0 kB
KernelPageSize: 4 kB
MMUPageSize: 4 kB
80115000-80119000 rw-p 00115000 b3:01 16648 /system/lib/libsample.so
Size: 16 kB
Rss: 16 kB
Pss: 16 kB
Shared_Clean: 0 kB
Shared_Dirty: 0 kB
Private_Clean: 0 kB
Private_Dirty: 16 kB
Referenced: 16 kB
Swap: 0 kB
KernelPageSize: 4 kB
MMUPageSize: 4 kB
想请问一下,这显示的size,rss值,可以就当作这个so文件运行时的内存占用么?
或者有其他的方法监视其内存占用量。
如果可以,请回复到我的邮箱: [email protected] 谢谢。
亲…大神..摸摸大..是这样的,关于rss..feedly 以及鲜果都不能把本站的全部文章抓取到..甚是遗憾啊..不知道是软件的限制还是其他的原因…请问有没有好用的Rss阅读器啊…
2012年以及之前的文章feedly同步不了了…but how could this be ???
@沧浪淼客
试试 newszeit 吧,真的很好用。
可以抓取全文、可以看到墙外内容、可以通过定制标签喜好把文章分为专注、一般;有 网页、iOS、Android 版
嗨!我的名字是吉Reinmiller 。我要找iTunes下载为iPad 4
你好,
友情连接中的 HelloGcc Working Group的地址 能否更新为 http://www.hellogcc.org/?
谢谢!
已更新。
我写了这样一段代码,我想问一下,为什么cout &C::c的时候结果是正确的(指针),而cout &C::a和&C::b结果都是1呢?如果可以,请回复到我的留下的邮箱,谢谢
admin.gxhc520.cn 申请与贵站友情链接
@4hroot
忘记 博客名就懒懒滴nms 3q
博主你好,很喜欢你的文章与笔风,加个友链吧
http://www.luwikes.com luwikes
贵站已加
你好,陈皓,
我关注您的主页已经半年之久,您的文章让我受益匪浅。
可否推荐一些在编程、计算机领域比较有价值的博客、网站;或是您所关注的个人博客或网站。
你的博客文章一直很不错, 的确是用心。 今天看了你关于review的文章, 觉得很有收货。 很多时候,我也碰到你在阿里的境遇:很多人反对,不愿意改变。但是我没你这样的能力,有理有据的去推进你认为对的理念。 你的这篇文章给我很多支持和信心。 另外,关于review,可否提供一个参考书目以供我学习。 谢谢。
申请友链 谢谢了IT http://www.itjhwd.com
来一发。。
您好,我是茶话汇(Tektea’s Blog)的博主,能否将我的友情链接地址调整为http://www.tektea.com
多谢:)
陈老师,
您好!,能否把ACMer 的链接改一下, 我换域名了,
改成 http://HelloACM.com
谢谢了!过不久就要进行 google PR 更新了。
很好的小站,感谢站长的坚持和付出.
最后,要是留言能不需要填昵称和电子邮箱就好了.
JDK8 中的 Interface 可以加default方法,感觉和Abstract class有些类似。有人说还是有区别,因为Abstract class不能多重继承。
我弱弱的想,那能不能不改interface,而是让Abstract class可以多重继承,不是达到现在同样的效果了么?
没想明白,如果可以,能否请您开贴给大家梳理下?
大牛你好,我想问下,你对mongodb+node.js这个技术的发展趋势怎么看,我刚毕业,原来学java的,公司要我们组往这个领域转,纠结
我很欣赏这个网站,好多我们极客们感兴趣的话题都在。
陈兄,您好,能否将TekTea’Blog调整为 茶话汇-IT运维那些事儿 多谢了哈:)
点击回到顶部的时候会重新打开一个标签页,感觉不方便
我鼠标的问题,抱歉,我要换鼠标了
楼主技术文章很多呀。。要重抄旧业了。做一名程序员呀。。
现在重新开始进行IOS的开发,当然了之前好久没有进行开发了,(虽然是计科系科班出身,当然了个人还是有些技术控的,可以说重回正道了, 看到李开复老师的那本书后,感觉随心吧,其他的就不太关注了。) C语言,数据结构很早就用过, 只是多年没有使用了。(在linux上安装了相关的工具, vim,插件开发C语言,编译工具,调试工具还时相当丰富的。基本语言练习了一下,指尖代码跳跃的感觉有了一些, 为何大家说时码农,终于有感觉了。。就就是自己在种田呀。另外专门看了一本国外翻译过来的书籍,其实是讲解计算机原理,采用c语言来写的,从编译,到机器代码,以及编译过程的符号表,链接,重定位等等将的相当有技术实力, 比当初大学里面学习的,就太深刻了。)
object -c 看到大家推荐,绿橙子的书早就看完了, 现在看橙橘子的那本书, 大约看完一半了。。有些跳着看。。
书是写的比较细致, 各个章节,和对应的代码都不错。 是个学习的好材料。。可能本人比较着急,跳着看了。间隔着看其他的书籍,和相关博客。。重新起航,到了朋友的一家公司,去学习做IOS开发的,当然了免费全程参与。其他的不多考虑了。(主要是能够参与到项目中,能够提高快一些,其实有c基础,obj-c无非是多一些语法,上手还是很快的)
当然了,在目前互联网比较普及的今天,学习查阅资料都很方便,比较起当初毕业的时候,连电脑都很罕见的,更别说互联网了, 我当时在研究所的时候当时都是拨号上网,公司提供的资源了。。
贵站的文章很不错啊,在这也学习了很多,能不能相互链接一下,我的博客http://www.makrsaas.com
大哥,我是刚进来的。您只说不用百度了,却没有说打从现在起,该用什么,该用什么替换。即使我知道可以用谷歌,或是其它,但是并不晓得那样做是不是在响应您的号召?
今天发现,二维码的图片像极了之前的头像照片,不是偶然吧……
Mark一下高人. 希望一起干,内容在整理。
请问这里有微信订阅么?
昨天看了一遍博客,刚知道这里,哈哈,写了《…Makefile》的牛逼博主!
我是菜鸟,想问下,这个网站有类此CSDN/开源中国的手机客户端吗?
如果没有,用手机怎么看?
在手机上看好麻烦!谢谢啦,有个好的中下午!
友情链接有问题。
有些打不开,有些拼写错误,比如吕毅的Blog,地址http//,少了个:
博主,你微博的头像二维码名片是用什么工具做出来的,我微博上面私信你了,还是来这再留个言吧!
因为最近在学习vim,所以找到了您的网站,感觉您的网站非常有用
但是我在给我的vim安装插件时遇到了一个难题,由于英语不太好,所以github的内容可能有点没看懂
因为某个插件似乎对vim-pathogen有依赖,所以我就利用Vundle来托管安装vim-pathogen
但是当vim-pathogen的文件下载好后,我按照着他的说明在.vimrc中添加语句
execute pathogen#infect()
重启vim却发现vim检测到这个语句出错了
错误提示如下
Error detected while processing /home/joshua/.vimrc:
line 124:
E117: Unknown function: pathogen#infect
E15: Invalid expression: pathogen#infect()
github上另外两个预计因为以前的需要已经加入到这个语句之前
请问这个问题应该如何解决?
非常感谢您抽出时间回答我的问题
还有就是我觉得这个评论页面,评论倒序排列显示会更加友善,不知站长认为如何?
酷哥,你好,希望你能看到我的留言啊,我最近在学习c语言指针的时候,经常性的遇到“段错误(核心已转存)”,遇到这样的问题,我真是束手无策,用gdb调试只能发现错误的那一行,但是不知道怎么改,请允许我贴一段代码,
#include “stdio.h”
/*将字符串ct中最多N个字符复制到字符串s中,并返回s,如果t中少于n个字符,则用”填充*/
char *strncpy_1(char *s,const char *ct,int n);
void main(){
char *s=”0″;
const char *ct=”abc”;
char *m;
m=strncpy_1(s,ct,1);
printf(“%s\n”,m);
}
/*
const char *p表示:指针p指向的字符类型的值是不变的
*/
char *strncpy_1(char *s,const char *ct,int n){
/*
char *p;
p=s;
while(*ct){
*s=*ct;
–n;
if(n0){
*s++=*ct++;
}
while(n–>0){
*s++=”;
}
}
在GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04下调试*s++=*ct++;这一行报错“Program terminated with signal SIGSEGV, Segmentation fault.”,浩哥,遇到这种情况,该如何入手处理呢?烦请回复下啊
不好意思,发现复制粘贴的代码有问题,我竟然没找到有插入代码的插件,就只能手打了
#include “stdio.h”
char *strncpy_1(char *s,const char *ct,int n);
void main(){
char *s=”0″;
const char *ct=”abc”;
char *m;
m=strncpy_1(s,ct,1);
printf(“%s\n”,*m);
}
char *strncpy_1(char *s,const char *ct,int n){
while(*ct&&n–>0){
*s++=*ct++;
}
while(n–>0){
*s++=”;
}
}
绝对不是灌水的,最后一行代码是这样的“ *s++=‘’ ” 哪个“ 斜杠和零 ”显示不出来,要是能提供一个留言修改功能就好了
请教个关于makefile的问题:
#makefile内容
a: b c
b: …
生成b
c: …
成生c
b 和 c 没有依赖关系, 是否可以并行的生成呢 .
酷壳不错,可以和我交换友情链接吗,
iMAG移动应用开发平台,
网址:http://www.imagapp.com
这个网站是我搞的,有意请邮件联系,谢谢!
刚了解到这个网站,的确很好的一个网站。我用百度进来,弹出了窗口,还是第一次见到这样的公然对百度挑明立场的。。
您好,最近遇到一个关于商品搜素的问题想请教一下。
目前在做一个电子商务的项目,在商品搜素这块感觉比较头痛,比如搜素“手机”,不能带出“手机配件”的商品。这个用模糊匹配显然无法满足要求。京东和淘宝都可以搜出正确的结果。
本来以为可以使用全文检索来实现,但是了解了一下发现做到精确匹配还是很难,想请教下搜素这里面涉及的主要技术点是哪些。
您的微博粉丝 , 谢谢
陈老大,能不能把 “不用百度”那个提示框添加一个关闭按钮
没有任何所谓的思想是可以盲目崇拜的,博主就陷入了这种盲目崇拜。盲目崇拜,会令人神智不清,令人愚昧无知,令人看不到事实。
推介博主看完这本书(如果早就看过这本书,那就真是不好的消息)
http://pan.baidu.com/s/1dD28rG9
消除盲目崇拜