转载
yaochunnian
执行力!
展开
-
在C/C++程序中打印当前函数调用栈
前几天帮同事跟踪的一个程序莫名退出,没有core dump(当然ulimit是打开的)的问题。我们知道,正常情况下,如果程序因为某种异常条件退出的话,应该会产生core dump,而如果程序正常退出的话,应该是直接或者间接的调用了exit()相关的函数。基于这个事实,我想到了这样一个办法,在程序开始时,通过系统提供的atexit(),向系统注册一个回调函数,在程序调用exit()退出的时候,这个回转载 2011-12-08 14:53:00 · 2104 阅读 · 0 评论 -
Beyond Compare 设置打开文件的默认编码
Beyond Compare 设置打开文件的默认编码2012.11.19Beyond Compare 每次打开都会以西欧(windows)打开文件,在有中文的地方,经常出现乱码。但是设置每个文件的编码方式后,下次依然会变成西欧编码。找了很久才找到设置地方:工具>>文件格式 在右侧切换到 第二个标签页【转换】 在靠下的杂项里即可设置编码方式。隐蔽吧转载 2013-07-10 18:21:53 · 1139 阅读 · 0 评论 -
"error while loading shared libraries: xxx.so.x" 错误的原因和解决办法
一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如:tmux: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory原因一般有两个, 一个是操作系统里确实没有包含该共转载 2013-07-09 11:37:58 · 289 阅读 · 0 评论 -
修改linux文件权限命令:chmod
修改linux文件权限命令:chmodLinux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。 文件或目录的访问权限分为只读,只写和可执行三种。以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作。可执行权限表示允许将该文件作为一个程序执行。文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文转载 2013-05-21 22:47:35 · 236 阅读 · 0 评论 -
带不定参数的宏
写一个带不定参数的宏函数2011-03-14 21:51:42 1.可变的宏是具有不定参数的宏。这些参数用...代表,被保存到__VA_ARGS__中。他会在内部进行扩展。#defien err(...) fprintf(stderr, __AV_ARGS__)err("%s file total %dMB.\n", "hello.c", 2) ;预处理后为: fpri转载 2013-02-20 13:44:54 · 661 阅读 · 0 评论 -
mysql中having的用法(和where的区别)
让我们先运行2个sql语句:1、SELECT * FROM `welcome` HAVING id >1 LIMIT 0 , 302、SELECT * FROM `welcome` WHERE id >1 LIMIT 0 , 30查看一下结果吧,怎么样?是不是查询到相同的结果。让我们再看2个sql语句:1、SELECT user, MAX(salary) FROM users转载 2012-12-22 15:46:21 · 2755 阅读 · 0 评论 -
PHP关联数组的10个技巧
PHP关联数组的10个技巧这篇文章将介绍10个操作PHP关联数组的技巧,熟练运用能帮助你提高开发效率。1、添加数组元素PHP是一种弱类型语言,这意味着你不需要显示声明一个数组及其大小,相反,你可以同时声明并填充数组。$capitals = array( 'Alabama' => 'Montgomery', 'Alaska' => 'Juneau', 'A转载 2012-12-22 15:29:59 · 267 阅读 · 0 评论 -
source exec区别
source exec区别 2011-05-12 10:22:19| 分类: shell编程 |字号 订阅来自shell十三问:问题的提出:cd /etc/aa/bb/cc可以执行,但是把这条命令写入shell时shell不执行!这是什幺原因呀!先让我们了解一下行程(process)的观念好了。首先,我们所执行的任何程序,都是由父行程(paren转载 2012-12-16 19:44:33 · 218 阅读 · 0 评论 -
shell 批量注释方法研究
写SHELL的时候以前都是用#注释,但是遇到一段话需要注释的时候,需要N多个#,太麻烦了。 今天逛坛子的时候发现可以注释一段内容:今天用 : ....注释内容 BLOCK注释掉一段话,发现注释内容中有报错出现。仔细查看发现是有反引转载 2012-12-12 13:30:45 · 656 阅读 · 0 评论 -
mysql数据库锁
一个数据库操作需要半个小时,并且在一个transaction内,导致其它的操作因为lock而timeout。 为了解决这个问题,找了DBA了解了数据锁的知识: 1. 两种类型的锁: locks: 共享的(S)锁允许一个事务去读一行(tuple)。 独占的锁(X)允许一个事务更新或删除一行。 2. 表锁定,页锁定,行锁定? 看看my转载 2012-12-10 22:35:32 · 230 阅读 · 0 评论 -
PHP constructor protected
PHP constructor protected(2012-09-16 15:47:26) the purpose of a private or protected constructor is toprevent the class from being instantiated from outside of theclass.构造转载 2012-11-23 00:25:03 · 285 阅读 · 0 评论 -
bash的unexpected end of file错误
syntax error: unexpected end of file问题的解决办法dos文件转换成unix文件格式 dos格式文件传输到unix系统时,会在每行的结尾多一个^M,当然也有可能看不到,但是在vi的时候,会在下面显示此文件的格式,比如 "dos.txt" [dos] 120L, 2532C字样,表示是一个[dos]格式文件,如果是MAC系统的,会显示[MAC],因为文转载 2012-12-04 15:04:02 · 1025 阅读 · 1 评论 -
模板高级用法: Template Template Argument
注意,template template parameter 是极晚近才加入的C++ 特性,因此上面这个程序可作为一个极佳工具,用来评估你的编译器对 template 特性的支持程度。下面的代码在vs2008通过, codeblocks 通过, vs2003不通过// stack8.cpp : Defines the entry point for the cons转载 2012-11-19 22:03:12 · 363 阅读 · 0 评论 -
MySQL中如何实现select top n
MySQL中如何实现select top n没有系统过,今日想查询前n条记录,习惯性的输入sqlserver的 n的形式语句,select top 5 * form table_name 报错,一查,原来mysql通过limit可以实现相关功能,而且功能更加强大,GOOD。以下是limit在mysql中的使用详解:SELECT * FROM table LIMIT [offs转载 2012-11-18 14:18:45 · 1621 阅读 · 0 评论 -
shell调用php脚本,并传递参数
命令行执行带参数的php脚本,并取得参数张映 发表于 2011-07-15分类目录: php一,为什么我们要在命令行下运行php脚本呢?个人理解,主要有二个原因:1,利用crontab去跑php,可以给服务器减压,当然在这里有一个条件,就是实时性要求不高。比如:sns中的好友动态,这个实时要求不高,但是数据量比较大,这个时候定时跑的话,会给web服务器,数据库服转载 2012-11-17 16:57:19 · 3790 阅读 · 0 评论 -
mysql下如何执行sql脚本
首要步骤(一般可省略):开启mysql服务(默认是开机时就自动运行了):控制面板-->管理工具-->服务,在里面找到名称为mysql的项,双击就可看它的服务状态是启动还是停止,把它设为启动 连接mysql:在命令行下输入 mysql -h localhost -u root -p回车,然后输入密码即可;或直接运行mysql自带的连接工具,然后输入密码即可.1.编写sql脚本转载 2012-11-14 16:04:01 · 340 阅读 · 0 评论 -
It is not safe to rely on the system's timezone settings
It is not safe to rely on the system's timezone settings【转】在写php程序中有时会出现这样的警告:PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezo转载 2012-11-10 23:18:45 · 373 阅读 · 0 评论 -
信号量大多数情况下可以淘汰条件变量
多线程编程中,发现同步和互斥的手段中,条件变量见到的是最少的。后来查找资料发现:使用信号量完全可以模拟条件变量,而且通常更加具有优势。可以用信号量模拟锁和条件变量:1) 锁,在同一个线程内同时对某个信号量先调用sem_wait再调用sem_post, 两个函数调用其中的区域就是所要保护的临界区代码了,这个时候其实信号量是作为二值计数器来使用的.不过在此之前要初始化该信号量计数为1,见下转载 2013-07-28 19:12:36 · 459 阅读 · 1 评论