分类目录归档:代码人生

代码中的人生

同步、异步、阻塞、非阻塞是什么意思

同步、异步、阻塞、非阻塞这4个词在计算机IO和网络模型中非常常见。今天我自己给别人解释,又把自己解释糊涂了。回忆了国外操作系统中一个投递邮件的例子。 理解时应该组合着理解,有以下四种情况: 现在你是一个邮递员。 同步阻塞:把邮件投递到hiwgy家的邮箱中,然后站在邮箱旁边等,等到hiwgy把邮件取走了,你才继续投递下一封邮件。 同步非阻塞:把邮件投递到hiwgy家的邮箱中,然后你就继续投递下一封邮件;但是,你不停得给hiwgy打电话,问他是否收到了邮件。 异步阻塞:把所有邮件投递到所有收件人的邮箱中,然后你回到了家里,你开始等收件人给你打电话。 异步非阻塞:把邮件投递到hiwgy家的邮箱中,然后你继续投递下一封邮件,hiwgy突然给你打了个电话,告诉你他收到邮件了,你知道了。 如果要单独理解“同步和异步”,或者单独理解“阻塞和非阻塞” 同步和异步:感觉这个不好解释。同步主要指你的线程要主动关注你的行为是否达到目标了;异步,会有别人通知你,你的行为达到目标了。 阻塞和非阻塞:指你自己的线程,是否需要wait。比如一个IO写函数调用,如果你需要等待写操作执行完毕,函数才返回,那么就是阻塞;如果写操作并未执行完毕,函数就返回,那么就是非阻塞。

发表在 Programming language, 蛋疼系列 | 标签为 , , , | 留下评论

stl make_heap使用

摘要:好久没有写blog,翻译一篇cplusplus上的make heap文档,凑凑数吧。在工程项目中有不少需求是多次求最大数或者最小数,堆是好的选择之一。如果我比较懒,又比较严谨的话,项目也允许使用stl的话,我会采用STL的make_heap, push_heap, pop_heap, sort_heap, 结合vector来完成需求。

发表在 C/Cplusplus, 蛋疼系列 | 标签为 , , , , | 留下评论

蛋疼系列之——memcpy源码分析

摘要:曾经笔试题目要求写memcpy的C实现,后来也常见面试题目中出现memcpy,今天动手看了下GNU的实现,感慨感慨。本文先从网上的一个经典答案扩展开来,最后分析其GNU glibc2.14的实现。

发表在 C/Cplusplus, linux, 编译问题与优化, 蛋疼系列 | 标签为 , , | 留下评论

shell ssh登陆后执行一段代码

摘要:有需求是操作上百台机器,一台一台登陆就够让人崩溃了。因此就想如何在shell脚本中自动登陆上一批机器,然后在这些机器上执行命令。曾经用过lftp,用EOF可以实现ftp登陆机器并使用lftp的相关命令;今天尝试了下ssh,没想到也可以,不过由于信任依赖关系,需要一些输入,通过更改StrictHostKeyChecking配置项规避该输入问题;如一楼评论所言“yes/no 的问题,可以用 expect 搞定,还能支持未建立信任关系的时候自动输入密码。修改 ssh_config 需要 root 权限,不容易实现”,本文最后给出了使用expect实现的例子。

发表在 shell, 蛋疼系列 | 5 条评论

写篇软文——关于CCTV2转职成baidu频道的感想【转载】

引言:今天同前baidu同事吃饭间突然接到家里的电话,问:“百度这两天怎么了,如此被CCTV2炮轰”,微薄上也有baiduer接到家里的电话:“不要做对不起社会的事情”,可见CCTV2的群众覆盖率之广泛、群众影响之深远。作为财经频道,不提百度对中国经济的贡献,只是一味放大其不足的一面,有失自己被国家赋予的身份、人民赋予的信赖。目前国内很多中小企业的存活非常依赖搜索引擎,百度的凤巢系统提供的广告实时上下线、按地域时段投放广告可以让客户的广告支出花的更有价值、商桥业务直接通过聊天软件方便买家与卖家的沟通。我自身就有使用百度找到商家的例子:用百度找小区附近的矿泉水提供站、空调清洗服务、古筝培训,并且搜出的结果也标明了“推广连接”字样;从当当、京东的例子,也可以看到其对百度的依赖。此次CCTV2的“揭开百度推广背后的黑幕”的报道,个人认为对baidu会对百度的广告审核、广告上线、广告排名的有积极促进的一面,提高广告质量、加强对广告主的管理,希望百度能够坚守并一直实现着自己的使命“让人们更便捷地获取信息,找到所求”。

发表在 蛋疼系列, 转载 | 留下评论

编译错误:ISO C++ forbids declaration of *** with no type

今天遇到个问题,“ISO C++ forbids declaration of *** with no type”。 错误的原因一般是:两个头文件相互include,一般可以采用#ifndef或前置声明解决该问题; 具体用法很简单,就不讲了。

发表在 编译问题与优化, 蛋疼系列 | 标签为 | 留下评论

仙剑奇侠传五,我是个玩不起正版的人

作为一个准仙剑迷,从2011年初就开始盼着仙剑5的问世。标准版到手后,我发现我玩不起。

发表在 蛋疼系列 | 标签为 | 留下评论