`
splayx
  • 浏览: 82973 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表

工具地址

errno http://epydoc.sourceforge.net/stdlib/errno-module.html   graphviz http://www.graphviz.org/doc/info/shapes.html#record

打印调用栈

    博客分类:
  • C++
#include <execinfo.h> #include <stdlib.h> #include <stdio.h> #include <unistd.h> const int STACK_BUF_SIZE = 100; void *stack_buf[STACK_BUF_SIZE]; void func3(void) { int k; int n = backtrace(stack_buf, STACK_BUF_SIZE); printf("%d addresses has ret ...

wordpress

使用 Crayon Syntax Highlighter插件 <pre>粘贴code在这里</pre>   数据库备份和恢复 mysqldump -u root -p mytest > mytest.sql mysql -u root -p mytest < mytest.sql   删掉关于标题,在twentytwelve/content-page.php中,删掉一下代码 <header class="entry-header"> <?php if ( ! is_page_template( ...

TCP优化

    博客分类:
  • net
1、给特定的TCP设置特定的缓冲区大小,例如前端接入设1K,跟后端交互的可以设大点64K。 当设置TCP套接口接收缓冲区的大小时,函数调用顺序是很重要的,因为TCP的窗口规模选项是在建立连接时用SYN与对方互换得到的。对于客户,SO_RCVBUF选项必须在connect之前设置;对于服务器,SO_RCVBUF选项必须在listen前设置。

volatile使用

    博客分类:
  • C++
volatile可以限制编译器对变量的访问做优化, 使得不利用CPU的缓存(寄存器),而到主内存中获得。   关于volatile的使用建议参考: http://yarchive.net/comp/linux/ACCESS_ONCE.html 对于线程间共享的变量,如果没有lock保护,而且有可能改变的, 都用ACCESS_ONCE(volatile)保护起来吧, #define ACCESS_ONCE(x) (*(volatile typeof(x) *)&(x)) 以免编译器做优化,导致多线程情况下出错。 编译器优化只是保证单线程下是绝对正确的。例如上面url给 ...

RPM二进制打包

首先要写一个spec文件:   Name: rfus Summary: Resumable File Upload Service Version: 1.0.0 Release: linux Buildarch: x86_64 Buildroot: %{_topdir}/BUILDROOT/%{name}-%{version}-%{release}.%{buildarch} License: GPL v2 Group: Applications/Server ...

svn基本操作

  去除可执行属性 svn propdel svn:executable on rfus_md5.c   #拉分支,注意客户端和服务端的svn版本有差异,可能导致操作不成功 #拉发布分支,考虑到发布不顺利时可以比较好地排除。 svn copy \ http://svn.. \ http://svn../branches/feature -m "free"   查看版本145190和当前最新修改(未提交)的差异 svn diff -r 145190 /home/tanqing.zjj/code/uss_app_trunk/Servers/AliDDB/ ...
相关参数-l    监测环路网络接口(lo)。缺省情况下,ifstat监测活动的所有非环路网络接口。经使用发现,加上-l参数能监测所有的网络接口的信息,而不是只监测 lo的接口信息,也就是说,加上-l参数比不加-l参数会多一个lo接口的状态信息。-a  监测能检测到的所有网络接口的状态信息。使用发现,比加上-l参数还多一个plip0的接口信息,搜索一下发现这是并口(网络设备中有一 个叫PLIP (Parallel Line Internet Protocol). 它提供了并口...)-z  隐藏流量是无的接口,例如那些接口虽然启动了但是未用的-i  指定要监测的接口,后面跟网络接口名

nginx操作笔记

./configure --add-module=/path/to/module --without-http_rewrite_module --with-http_stub_status_module   ./objs/nginx -p /nginx-1.4.4 -c /nginx-1.4.4/conf/nginx.conf

sizeof和数组类型

    博客分类:
  • C++
sizeof(类型)可以得到一个类型的大小, 比较容易搞错的是把数组类型看成指针类型,见下面的代码:   #include <stdio.h> // error: cannot convert // ‘char*’ to ‘int*’ for argument ‘1’ to ‘void fun(int*)’ // 可见a被看成指针,而不是一个数组类型 // 所以这里怎么都是打印出指针类型的大小 // void fun(int a[10]) { // printf("%d\n", sizeof(a)); // } void fu ...

辅助工具

https://www.websequencediagrams.com/#
pprof是分析google cpu profiler输出文件的工具, 但在使用之前需要做些准备工作   1、安装graphviz(提供dot工具)   2、安装gv(http://www.gnu.org/software/gv/) 下载gv源码后,需要做一下准备 安装Xaw3d库 yum install Xaw3d libXaw3d*放在:/usr/X11R6/lib 安装头文件 yum install Xaw3d-devel.x86_64 然后就可以./configure然后安装了。   google cpu profiler只有gproftools中的一个工 ...

linux常用命令

1、lsof使用 lsof -p <pid> lsof -i:port查看端口port被哪些程序占用了   2、在类Unix系统中,/dev/null,或称空设备,是一个特殊的设备文件,它丢弃一切写入其中的 ... 在程序员行话,尤其是Unix行话中, /dev/null 被称为bit bucket ...

python的list和tuple

列表是python中简单而重要的数据结构 list_sample = [1, 2, 3]   超预分配的量大概只有总量的八分之一,保证不太浪费的情况下,也有线性的摊分复杂度。 new_allocated = (newsize >> 3) + (newsize < 9 ? 3 : 6)   当增加或删除都有可能引起allocated的变化,当目前的allocated满足 allocated >= newsize && newsize >= (allocated >> 1) 这个关系时,allocated不变,不然更新分配 ...
  没多少行代码,先给出最终实现: template<typename T> class CAS { private: T *pt_; ...
Global site tag (gtag.js) - Google Analytics