- 博客(11)
- 资源 (10)
- 收藏
- 关注
转载 如何使用strace+pstack利器分析程序性能
如何使用strace+pstack利器分析程序性能引言有时我们需要对程序进行优化、减少程序响应时间。除了一段段地对代码进行时间复杂度分析,我们还有更便捷的方法吗?若能直接找到影响程序运行时间的函数调用,再有针对地对相关函数进行代码分析和优化,那相比漫无目的地看代码,效率就高多了。将strace和pstack工具结合起来使用,就可以达到以上目的。strace跟踪程
2013-01-24 14:58:30 522
原创 linux开发多线程中lsof与ulimit的使用的2个链接
开发linux平台的多线程程序中,遇到系统文件描述符限制引起的宕机,可以通过lsof和ulimit查看与修改系统配置来改善。使用 lsof 查找打开的文件 :讲解通过lsof查看多线程打开的文件数;通过 ulimit 改善系统性能 :讲解通过ulimit修改系统资源限制,提高系统性能的方法。
2013-01-10 14:41:55 1303
转载 C语言中史上最愚蠢的Bug
本文来自The most stupid C bug ever,很有意思,分享给大家。我相信这样的 bug,就算你是高手你也会犯的,你来看看作者犯的这个Bug吧。 首先,作者想用一段程序来创建一个文件,如果有文件名的话,就创建真正的文件,如果没有的话,就调用 tmpfile() 创建临时文件。他这段程序就是 HTTP 下载的C程序。code==200 就是 HTTP 的返回码。el
2013-01-10 11:28:31 506
转载 Tcpdump 使用详解
原文链接相信做网络编程的童鞋对这个瑞士军刀一定不陌生,没用过也至少听过吧。侯捷云“源码面前了无秘密”, geekard云“tcpdump面前TCP/IP了无秘密”。这个帖子总结了tcpdump的常用选项以及使用示例,一方面向大家介绍它的使用方法,另一方面对有基础的童鞋是一个很好的参考手册。SYNOPSIS(概要)tcpdump [ -ADeflnNqtvx ] [ -c cou
2013-01-09 15:40:13 420
转载 linux下多线程的创建与等待详解
原文链接所有线程都有一个线程号,也就是Thread ID。其类型为pthread_t。通过调用pthread_self()函数可以获得自身的线程号。下面说一下如何创建一个线程。通过创建线程,线程将会执行一个线程函数,该线程格式必须按照下面来声明:void * Thread_Function(void *)创建线程的函数如下:int pthread_create(
2013-01-09 15:38:34 377
转载 SO_KEEPALIVE套接口选项
原文链接目前手头有个关于心博功能的一个案例, 在使用SOL_SOCKET, SO_KEEPALIVE上有一点心得,想写出来和大家分享一下。关于SOL_SOCKET选项SO_KEEPALIVE有一个很详细的英文How TO, 在下面的网页中大家可以看到详细的内容[url=http://www.icewalkers.com/Linux/Howto/TCP-Keepalive-HOWTO
2013-01-09 15:37:25 492
转载 CLOSE_WAIT状态的原因与解决方法
原文链接这个问题之前没有怎么留意过,是最近在面试过程中遇到的一个问题,面了两家公司,两家公司竟然都面到到了这个问题,不得不使我开始关注这个问题。说起CLOSE_WAIT状态,如果不知道的话,还是先瞧一下TCP的状态转移图吧。关闭socket分为主动关闭(Active closure)和被动关闭(Passive closure)两种情况。前者是指有本地主机
2013-01-09 15:35:33 644
转载 Linux netstat命令详解
原文链接简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行netstat后,其输出结果为Active Internet connections (w/o servers)Pr
2013-01-07 16:17:15 264
转载 Linux vmstat命令实战详解
原文链接vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。
2013-01-07 16:11:40 314
转载 MySQL 一次执行多条语句的实现及常见问题
通常情况MySQL出于安全考虑不允许一次执行多条语句(但也不报错,很让人郁闷)。MySQL是支持在单个查询字符串中指定多语句执行的,使用方法是给链接指定参数://链接时设定 mysql_real_connect( ..., CLIENT_MULTI_STATEMENTS ); //或者中途指定 mysql_set_server_option( mysql, MYSQL_OPTION_MU
2013-01-06 19:12:17 1268
转载 转载: gdb查看运行时数据
原文链接在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是:printprint /是表达式,是你所调试的程序的语言的表达式(GDB可以调试多种编程语言),是输出的格式,比如,如果要把表达式按16进制的格式输出,那么就是/x。一、表达式print和许多GDB的命令一样,
2013-01-06 13:50:32 438
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人