- 博客(196)
- 资源 (48)
- 收藏
- 关注
转载 Linux time()函数
函数简介 函数名: time 头文件:time.h 函数原型:time_t time(time_t * timer) 功能: 获取当前的系统时间,返回的结果是一个time_t类型,其实就是一个大整数,其值表示从CUT(Coordinated Universal Time)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒
2015-05-07 11:39:34
799
转载 Python使用struct文章汇集
有的时候需要用python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用python的struct模块来完成.可以用 struct来处理c语言中的结构体. struct模块中最重要的三个函数是pack(), unpack(), calcsize()pack(fmt, v1, v2, ...) 按照给定的格式(fmt),把数据封装成字符串(实际上是类
2015-04-20 19:37:41
827
转载 IO模型介绍以及同步异步阻塞非阻塞的区别
先说一下几个单词。阻塞:用户进程访问数据时,如果未完成IO,等待IO操作完成或者进行系统调用来判断IO是否完成非阻塞:用户进程访问数据时,会马上返回一个状态值,无论是否完成同步:用户进程发起IO(就绪判断)后,轮询内核状态异步:用户进程发起IO后,可以做其他事情,等待内核通知 介绍一下IO模型 网络IO模型和文件IO模型是一样的,上图是IO的
2015-04-09 16:56:42
755
转载 diff目录或文件比较
[功能] 以行的方式比较文本文件的异同处 若要比较目录,则会比较相同文件名的文件[参数] -b 忽略空格数目的不同 -B 忽略空白行 -y 在两侧显示两个文件 --left-column 仅当两个文件不同时才显示右侧行,否则只显示左侧行 --suppress-co
2014-12-16 19:16:54
9183
转载 sysbench 安装,使用和测试
http://imysql.com/tag/sysbench http://www.cnblogs.com/zhoujinyi/archive/2013/04/19/3029134.html
2014-12-16 17:35:14
538
转载 mysql读写性能测试
近来工作中用mysql较多,但其实自己对mysql性能并不十分了解。前阵子正好读到一篇写用mysqlslap压测mysql性能的文章,于是自己也尝试了一下mysqlslap并且得到一些数据和结论。把压测到的数据与大家分享,如有谬误之处请指正。若需要详细了解本文使用的压力测试工具mysqlslap请移步下面的链接: 用mysqlslap进行mysql压力测试mysqlslap官方文档
2014-12-16 11:29:31
9789
转载 C/C++宏定义的可变参数
编写代码的过程中,经常会输出一些调试信息到屏幕上,一般会调用printf这类的函数。但是当调试解决之后,我们需要手工将这些地方删除或者注释掉。再这次的项目中就用到类似问题,为了调试程序,再一些地方输出了很多的信息,随着项目的调试,输出的信息越来越多。于是就面临着,如何处理这些输出信息的语句。简单删掉,不仅有一定的工作量,而且也不能保证之后就不出现问题,出现问题后这些信息还是有用的。
2014-11-26 19:57:17
1705
转载 SELECT FOR UPDATE(转)
MySQL 使用SELECT ... FOR UPDATE 做事务写入前的确认以MySQL 的InnoDB 为例,预设的Tansaction isolation level 为REPEATABLE READ,在SELECT 的读取锁定主要分为两种方式:SELECT ... LOCK IN SHARE MODE SELECT ... FOR UPDATE这两种方
2014-11-26 12:06:03
3563
转载 解决AndroidADT自带Eclipse编辑器不能自动代码提示的问题。
今天发现,我下载的AndroidADT开发套装中自带的Eclipse没有自动代码提示功能。通过参考http://blog.youkuaiyun.com/coolszy/article/details/7241955文章解决了问题。总结一下,解决方法分为两步:一、设置“Auto activation triggers for java”打开:Eclipse -> Window -> Pe
2014-11-05 23:07:28
2415
转载 缓存一致性(Cache Coherency)入门
本文是RAD Game Tools程序员Fabian “ryg” Giesen在其博客上发表的《Cache coherency primer》一文的翻译,经作者许可分享至InfoQ中文站。该系列共有两篇,本文系第一篇。我计划写一些关于多核场景下数据组织的文章。写了第一篇,但我很快意识到有大量的基础知识我首先需要讲一下。在本文中,我就尝试阐述这些知识。缓存(Cache)本文是
2014-09-30 18:24:04
2332
转载 关于SSD写入放大问题
转载请说明出处:http://blog.youkuaiyun.com/cywosp/article/details/298124331. 关于SSD的写入放大 之前在SSD(Solid State Drive)上设计并实现缓存系统用于存储数据块时遇到了一些问题,比如在磁盘写满后,如果老化掉一些最久未使用的数据块后,继续大量写入新的数据,随着时间的推移,写入速度变得比刚
2014-09-24 10:49:29
1304
转载 xargs用法详解
之所以能用到这个命令,关键是由于很多命令不支持|管道来传递参数,而日常工作中有有这个必要,所以就有了xargs命令,例如:find /sbin -perm +700 |ls -l 这个命令是错误的find /sbin -perm +700 |xargs ls -l 这样才是正确的xargs 可以读入 stdin 的资料,并且以空白字元或断行字元作为分辨,将 stdin
2014-08-30 17:11:24
608
转载 Linux下include/lib/bin等搜索路径的配置
#增加.so搜索路径export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/liheyuan/soft/lib#增加.a搜索路径LIBRARY_PATH=$LIBRARY_PATH:/home/liheyuan/soft/lib#增加bin搜索路径export PATH=$PATH:/home/liheyuan/soft/bin#增加GCC的i
2014-08-21 19:40:05
2125
转载 luamysql 安装
lua版本:lua-5.1.5,下载链接:http://www.lua.org/ftp/lua-5.1.5.tar.gzluamysql版本:luasql-2.1.1,下载链接:http://files.luaforge.net/releases/luasql/luasql/LuaSQL2.1.1/luasql-2.1.1.tar.gz系统:centos 61、下载lua5.1.5
2014-08-21 19:38:13
694
转载 tcp_tw_recycle和tcp_timestamps的文章汇总
临近年关,人会变得浮躁,期间写的代码可谓乱七八糟。不过出来混始终是要还的,这不最近就发现一个PHP脚本时常连不上服务器。遇到这类问题,我习惯于先用strace命令跟踪了一下看看:shell> strace php /path/to/file EADDRNOTAVAIL (Cannot assign requested address)从字面结果看似乎是网络资源相关问题。这里顺便
2014-08-13 18:38:53
25091
1
转载 设置linux路径显示
PS1:提示符的设置 PS1(是数字1而不是字母l),每个版本bash的PS1变量内的特殊符号可能有些小的差异,你可以先man bash 一下。下面是FC4环境下默认的特殊符号所代表的意义: \d :代表日期,格式为weekday month date,例如:"Mon Aug 1" \H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是f
2014-08-13 14:44:27
1073
转载 Apache: No space left on device: Couldn’t create accept lock
昨天启动内部服务器的apache时,没启动成功,看了下/var/log/httpd/error_log,有如下错误:“[Mon Aug 06 09:32:20 2012] [emerg] (28)No space left on device: Couldn’t create accept lock (/etc/httpd/logs/accept.lock.6399) (5)”开始根据
2014-08-13 11:34:28
1739
转载 UDP包的最大大小是多少?
每个udp包的最大大小是多少? 65507 约等于 64K为什么最大是65507? 因为udp包头有2个byte用于记录包体长度. 2个byte可表示最大值为: 2^16-1=64K-1=65535 udp包头占8字节, ip包头占20字节, 65535-28 = 65507如果要发送的udp报文大于65507怎么办? 需要在应用层由开发者自
2014-07-28 12:15:24
6612
转载 Google Protobuf笔记
Protobuf消息定义消息由至少一个字段组合而成,类似于C语言中的结构。每个字段都有一定的格式。字段格式:限定修饰符① | 数据类型② | 字段名称③ | = | 字段编码值④ | [字段默认值⑤]①.限定修饰符包含 required\optional\repeated
2014-06-18 23:03:59
942
原创 lua相关知识点笔记
require,用于加载文件,会搜索环境变量LUA_PATH设定的路径,同时能判断文件是否已经加载来避免重复加载。比较奇特的是路径的设置,与一般的路径完全不同,其实就是用?当占位符,然后require filename的时候,用filename代替这些文号,比如:?;?.lua;c:\windows\?;/usr/local/lua/?/?.lua当你require 'lili'的时候
2014-06-17 16:47:30
845
转载 linux lsof命令详解
简介lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因
2014-06-04 15:13:59
553
转载 Epoll在LT和ET模式下的读写方式
在一个非阻塞的socket上调用read/write函数, 返回EAGAIN或者EWOULDBLOCK(注: EAGAIN就是EWOULDBLOCK)从字面上看, 意思是:EAGAIN: 再试一次,EWOULDBLOCK: 如果这是一个阻塞socket, 操作将被block,perror输出: Resource temporarily unavailable总结:这个错误表示资源暂
2014-05-23 10:27:23
718
转载 luamysql 安装
lua版本:lua-5.1.5,下载链接:http://www.lua.org/ftp/lua-5.1.5.tar.gzluamysql版本:luasql-2.1.1,下载链接:http://files.luaforge.net/releases/luasql/luasql/LuaSQL2.1.1/luasql-2.1.1.tar.gz系统:centos 61、下载lua5.1.5
2014-05-04 09:15:22
8071
1
转载 libz库
libz.a库提供压缩函数,即buffer压缩函数,在网络通信中,server可能需要将应答结果打包压缩发送给客户端。这样通信比较容易。最好的例子是:mysql客户端对mysqlserver进行select操作。查询结果非常大,此时mysql客户端可以用libz.a中的buffer压缩函数,将查询结果压缩,然后发送给客户端。所以在Makefile中,必须:g++时,必须有:-Imysq
2014-05-03 17:10:18
10777
转载 map对key排序
struct CmpByKeyLength { bool operator()(const string& k1, const string& k2) { return k1.length() < k2.length(); }};
2014-04-28 22:56:10
620
转载 Linux 调用动态库(.SO文件)总结
前面一篇文章“VS2010 C++创建、调用DLL图解”简单讲述了在Windows下创建和调用动态库(.dll文件)方法,本篇结合项目过程,总结一下Linux下调用动态库(.so文件)的方法和注意点。 像window调用库文件一样,在linux下,也有相应的API因为加载库文件而存在。它们主要是以下几个函数:函数名功能描述dlopen
2014-04-27 21:45:40
1668
转载 linux socket read函数
int my_read(int fd, void *buffer, int length) { int bytes_left; int bytes_read; char *ptr = NULL; bytes_left = length; while
2014-04-21 14:35:13
6666
转载 vim分屏
本篇文章主要教你如何使用 Vim 分屏功能。 分屏启动Vim使用大写的O参数来垂直分屏。vim -On file1 file2 ...使用小写的o参数来水平分屏。vim -on file1 file2 ...注释: n是数字,表示分成几个屏。关闭分屏关闭当前窗口。Ctrl+W c关闭当前窗口,如果只剩最后一个了,则退出
2014-04-05 10:07:16
773
转载 expect spawn、linux expect 用法小记
使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄、收藏。可是为什么要这么写却不知其然。本文用一个最短的例子说明脚本的原理。 脚本代码如下: ############################################## #!/usr/bin/expect set timeout 30 spawn s
2014-04-04 18:30:07
1144
转载 shell 判断字符串中是否含有指定字符
new=sddps=secho "$new" |grep -q "$ps"if [ $? -eq 0 ]thenecho "yes"elseecho "no"fi判断某年某天是星期几?year=1980end_year=2010day_2=10/22week_2=Friwhile [ $year -lt $end_ye
2014-04-03 17:46:06
21920
原创 M进制转换成N进制思想
先把M进制转换成十进制,再把十进制转换成N进制。#include #include using namespace std; char index[62] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K',
2014-02-13 21:41:48
2986
转载 闭包
即函数定义和函数表达式位于另一个函数的函数体内。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数和声明的其他内部函数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时,就会形成闭包。也就是说,内部函数会在外部函数返回后被执行。而当这个内部函数执行时,它仍然必需访问其外部函数的局部变量、参数以及其他内部函数。这些局部变量、参数和函数声明(最初时)的值是外部函数返回时的值
2014-01-08 18:15:25
540
原创 linux的那些小技巧
1:生成随机16进制数字,n是字符的数量:openssl rand -base64 16v68KIPg+eOyRnIPzxYyhXA== 2:提取字符串的前5个字符: var=abcdefgh;echo ${var:0:5}3:ssh命令用于远程登录上Linux主机 ssh [-l login_name] [-p port] [user@]hostname 打开S
2013-12-27 17:30:28
720
原创 动态库搜索路径
1.编译目标代码时指定的动态库搜索路径; 2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径;3.配置文件/etc/ld.so.conf中指定的动态库搜索路径;4.默认的动态库搜索路径/lib;5.默认的动态库搜索路径/usr/lib。在编译目标代码时指定程序的动态库搜索路径。这是通过gcc的参数"-Wl,-rpath,"指定。当指定多个动态库搜索路径时,路径之
2013-12-11 11:47:20
956
转载 CLOSE_WAIT
最近遇到的一个关于socket.close的问题,在某个应用服务器出现的状况(执行netstat -np | grep tcp): tcp 0 0 10.224.122.16:50158 10.224.112.58:8788 CLOSE_WAITtcp 0 0 10.224.122.16:37655
2013-09-20 16:54:57
2462
TCP/IP详解,卷1:协议
2011-09-03
LCA RMQ 最小公共祖先 区间最小值
2010-08-07
组合数学 Richard A.Brualdi 中文版 机械工业出版社(Part2,共2部分))
2010-07-11
组合数学 Richard A.Brualdi 中文版 机械工业出版社(Part1,共2部分))
2010-07-11
Fat Fat16 Fat32 文件系统
2010-01-27
InstallShield 6_3实践与提高
2010-01-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人