站内搜索
浏览量Top10
- linux多线程编程,你还在用sleep么?用pthread_cond_timedwait吧 - 1,342 views
- python中thread的setDaemon、join的用法 - 482 views
- 编译错误:ISO C++ forbids declaration of *** with no type - 456 views
- 关于linux文件读写的几个系统调用 - 445 views
- 单反如何拍月亮(满月) - 380 views
- [zz]windows宿主机,ubuntu虚拟机下的上网设置(有线网络和无线网络) - 358 views
- 网络编程的一些事 - 316 views
- shell ssh登陆后执行一段代码 - 291 views
- sstable入门阶段——HFile(version1)结构解析与c++读实现 - 267 views
- thrift网络传输模型 - 250 views
-
最近文章
分类
-
barrier C/C++ compile error DP free heap join kill make_heap malloc memcpy mmap network pop_heap pread pthread_cond_timedwait push_heap read readahead rm setDaemon shell signal singleton socket thread thrift vector wish 函数栈 动态规划 华表 卧佛寺 参数校验 域名 夜景 大裤衩 天安门 指针 枚举 游历 游戏 类型转换 返回值 面试 C/Cplusplus (14)
Help me (4)
linux (7)
NoSQL (1)
Programming language (1)
python (1)
shell (4)
web (1)
代码人生 (7)
分布式系统 (2)
摄影 (9)
操作系统 (1)
数据库 (1)
未分类 (3)
算法 (1)
编译问题与优化 (2)
网络 (1)
蛋疼系列 (8)
转载 (5)
随笔 (4)
WP Cumulus Flash tag cloud by Roy Tanck requires Flash Player 9 or better.
分类目录归档:linux
蛋疼系列之——memcpy源码分析
摘要:曾经笔试题目要求写memcpy的C实现,后来也常见面试题目中出现memcpy,今天动手看了下GNU的实现,感慨感慨。本文先从网上的一个经典答案扩展开来,最后分析其GNU glibc2.14的实现。
shell ssh登陆后执行一段代码
摘要:有需求是操作上百台机器,一台一台登陆就够让人崩溃了。因此就想如何在shell脚本中自动登陆上一批机器,然后在这些机器上执行命令。曾经用过lftp,用EOF可以实现ftp登陆机器并使用lftp的相关命令;今天尝试了下ssh,没想到也可以,不过由于信任依赖关系,需要一些输入,通过更改StrictHostKeyChecking配置项规避该输入问题;如一楼评论所言“yes/no 的问题,可以用 expect 搞定,还能支持未建立信任关系的时候自动输入密码。修改 ssh_config 需要 root 权限,不容易实现”,本文最后给出了使用expect实现的例子。
网络编程的一些事
摘要:本文简述采用socket进行网络编程的方法,以及常用的服务器、客户端连接模型,主要内容参考《linux程序设计》、《APUE》。
关于linux文件读写的几个系统调用
摘要:本文简单描述linux下文件读写的几个系统调用,文件读取方式,然后介绍几个初学者不常用的系统调用。
linux多线程编程,你还在用sleep么?用pthread_cond_timedwait吧
摘要:多线程编程中,线程A循环计算,然后sleep一会接着计算(目的是减少CPU利用率);存在的问题是,如果要关闭程序,通常选择join线程A等待线程A退出,可是我们必须等到sleep函数返回,该线程A才能正常退出,这无疑减慢了程序退出的速度。当然,你可以terminate线程A,但这样做很不优雅,且会存在一些未知问题。采用pthread_cond_timedwait(pthread_cond_t * cond, pthread_mutex_t *mutex, const struct timespec * abstime)可以优雅的解决该问题,设置等待条件变量cond,如果超时,则返回;如果等待到条件变量cond,也返回。本文暂不将内部机理,仅演示一个demo。