- 博客(483)
- 资源 (22)
- 收藏
- 关注
原创 linux 下写socket遭遇broken pipe(SIGPIPE C++)
原代码片段如下,程序在第08行报错,但是try,,,catch无法抓到错误,经过debug分析是由于收到broken pipe的信号。看来程序此时被终止了;那么我期望不被终止,该怎么做了。01 int sendLen = 0;02 int totalLen = 0;03 int packSize = pack.size();04 while(packSize != totalLen)05 {06
2011-05-26 16:57:00 6924 3
linux 下写socket遭遇broken pipe(SIGPIPE C++)
原代码片段如下,程序在第08行报错,但是try,,,catch无法抓到错误,经过debug分析是由于收到broken pipe的信号。看来程序此时被终止了;那么我期望不被终止,该怎么做了。01 int sendLen = 0;02 int totalLen = 0;03 int packSize = pack.size();04 while(packSize != totalL...
2011-05-26 16:57:00 261
原创 python assert dict 断言@对比@之递归断言
在测试工作中经常要对两个dict进行校验,而且dict可能是多层嵌套的,为此写了个递归函数。工作方便多了代码如下知识点:递归函数中必须有全局变量(C++中传引用的变量),所以在python中使用字典来保存每次递归结果如例子中的dicresult. #递归函数def _assert
2011-05-23 17:34:00 2777
python assert dict 断言@对比@之递归断言
在测试工作中经常要对两个dict进行校验,而且dict可能是多层嵌套的,为此写了个递归函数。工作方便多了代码如下知识点:递归函数中必须有全局变量(C++中传引用的变量),所以在python中使用字典来保存每次递归结果如例子中的dicresult.#递归函数def _assertdict(expobj=None,actobj=None,dicresult=None,key=N...
2011-05-23 17:34:00 310
原创 linux 下python 调用C++ .so如何debug c++代码
<br /> <br />1. 在python入口的函数写如下代码<br />time.sleep(50) #休眠若干秒,休眠的时间根据你操作速度定。为了有足够的时间启动gdb,并且attach到python的进程<br />为了防止操作过慢,程序没等gdb起来就已经跑远了,最好把要debug的代码行,另外记录到文本中<br />如:<br />b cmdswitch.cpp:321 #要debug的行数<br /> <br />2.先查看一下python的进程号<br />ps -ef|grep pyth
2011-05-12 18:52:00 2519
linux 下python 调用C++ .so如何debug c++代码
1. 在python入口的函数写如下代码time.sleep(50) #休眠若干秒,休眠的时间根据你操作速度定。为了有足够的时间启动gdb,并且attach到python的进程为了防止操作过慢,程序没等gdb起来就已经跑远了,最好把要debug的代码行,另外记录到文本中如:b cmdswitch.cpp:321 #要debug的行数2.先查看一下python的进程号...
2011-05-12 18:52:00 281
原创 linux shell编程之修改环境变量
啥都别说,上代码先#!/bin/bashdir=${PWD}icepath=/opt/ICE/binoraclehome=/opt/instantclient_11_2icehome=/opt/ICEpypath=/opt/IcePy-3.2.1/pythonboostpath=/usr/local/boost_143boostlib=$boostpath/libicelib=$icehome/libbfinder=`echo $PATH|grep $dir`echo
2011-05-11 11:37:00 1445
linux shell编程之修改环境变量
啥都别说,上代码先#!/bin/bashdir=${PWD}icepath=/opt/ICE/binoraclehome=/opt/instantclient_11_2icehome=/opt/ICEpypath=/opt/IcePy-3.2.1/pythonboostpath=/usr/local/boost_143boostlib=$boostpath/libicelib=$icehome...
2011-05-11 11:37:00 130
原创 linux shell之一键式安装测试框架
昨日写了一个一键式安装测试框架的脚本,因为是第一次写shell脚本遇到很多新知识,特将工作成果记录如下知识点1:一个shell脚本如果用不同的sh执行,那么要分成多个脚本编写 如部分代码rm,echo用的是bash,在第一行使用#!/bin/bash 而spawn用的是expect,需要在第一行使用#!/usr/bin/expect -f,那么就要分开多个脚本,在母脚本中调用子脚本的形式。知识点2:调用系统命令获取结果,需要用关键字单上引号。如key1知识点3
2011-05-11 11:32:00 1205
linux shell之一键式安装测试框架
昨日写了一个一键式安装测试框架的脚本,因为是第一次写shell脚本遇到很多新知识,特将工作成果记录如下知识点1:一个shell脚本如果用不同的sh执行,那么要分成多个脚本编写 如部分代码rm,echo用的是bash,在第一行使用#!/bin/bash 而spawn用的是expect,需要在第一行使用#!/usr/bin/expect -f,那么就要分开多个脚本,在母脚本中调用子脚本的形...
2011-05-11 11:32:00 146
原创 LINUX SHELL编程之远程拷贝
使用expect,进行远程拷贝 1.首先确认你的系统安装有expect which expect 如果显示如下,说明已经安装完expect,如果没有执行2 /usr/bin/expect 2. yum install expect 3.远程拷贝代码 #!/usr/bin/expect -f set password /{0j4jn*/{ spawn scp -r root@10.249.194.47:/usr/local/python /usr/
2011-05-11 11:25:00 1257
LINUX SHELL编程之远程拷贝
使用expect,进行远程拷贝 1.首先确认你的系统安装有expect which expect 如果显示如下,说明已经安装完expect,如果没有执行2 /usr/bin/expect 2. yum install expect 3.远程拷贝代码 #!/usr/bin/expect -f set password /{0j4jn*/{ spawn scp -r...
2011-05-11 11:25:00 91
原创 C++ python 交互之 python.dict to c++ map
代码片段如下,typedef map smap;//要转换的目的map转换函数string req_update_userprofile_pack_data2(std::string workkey,PyObject *dict_user){ Py_ssize_t i, j; i = 0; PyObject *key; PyObject *value; smap m_profilelist; while (PyDict_Next(dict_
2011-05-06 20:49:00 4026 1
C++ python 交互之 python.dict to c++ map
代码片段如下,typedef map<string ,string> smap;//要转换的目的map转换函数string req_update_userprofile_pack_data2(std::string workkey,PyObject *dict_user){ Py_ssize_t i, j; i = 0; PyObject *key; PyObject *v...
2011-05-06 20:49:00 307
原创 linux C++ 类成员函数中创建线程,且能访问类中其他成员变量
<br />最近刚开始玩C++,遇到一些基础问题,下面就是其中之一,将源代码公布一下方便大家查找。<br />linux C++ 类成员函数中创建线程,且能访问类中其他成员变量.<br />重点:将线程执行函数声明为非类成员函数,通过参数*arg 将this指针传入线程函数体中。<br /> <br />test.h<br /> <br />#ifndef TEST_H<br />#define TEST_H<br /><br />class test<br />{<br />public:
2011-05-04 12:49:00 3797 1
linux C++ 类成员函数中创建线程,且能访问类中其他成员变量
最近刚开始玩C++,遇到一些基础问题,下面就是其中之一,将源代码公布一下方便大家查找。linux C++ 类成员函数中创建线程,且能访问类中其他成员变量.重点:将线程执行函数声明为非类成员函数,通过参数*arg 将this指针传入线程函数体中。test.h#ifndef TEST_H#define TEST_Hclass test{public: t...
2011-05-04 12:49:00 236
linux C++ 类成员函数中创建线程,且能访问类中其他成员变量
最近刚开始玩C++,遇到一些基础问题,下面就是其中之一,将源代码公布一下方便大家查找。linux C++ 类成员函数中创建线程,且能访问类中其他成员变量.重点:将线程执行函数声明为非类成员函数,通过参数*arg 将this指针传入线程函数体中。test.h#ifndef TEST_H#define TEST_Hclass test{public: t...
2011-05-04 12:49:00 115
原创 python 如何传递字典型变量(不定参数)给c++
今天遇到一个难题,python要调用c++一个函数c++函数是可变长的变量如add(int cmd,...)然后再c++中使用va_list取得变长参数。那么python 该如何调用该函数呢。弄了半天也没有发现boost.python如何支持该类型的参数。后来一想,python
2011-04-29 13:50:00 3210
python 如何传递字典型变量(不定参数)给c++
今天遇到一个难题,python要调用c++一个函数c++函数是可变长的变量如add(int cmd,...)然后再c++中使用va_list取得变长参数。那么python 该如何调用该函数呢。弄了半天也没有发现boost.python如何支持该类型的参数。后来一想,python dict不是就是可变长的参数吗,里边放什么都可以。那么问题就转化问如何传递dict给c++。贴源...
2011-04-29 13:50:00 201
python 如何传递字典型变量(不定参数)给c++
今天遇到一个难题,python要调用c++一个函数c++函数是可变长的变量如add(int cmd,...)然后再c++中使用va_list取得变长参数。那么python 该如何调用该函数呢。弄了半天也没有发现boost.python如何支持该类型的参数。后来一想,python dict不是就是可变长的参数吗,里边放什么都可以。那么问题就转化问如何传递dict给c++。贴源...
2011-04-29 13:50:00 138
python 如何传递字典型变量(不定参数)给c++
今天遇到一个难题,python要调用c++一个函数c++函数是可变长的变量如add(int cmd,...)然后再c++中使用va_list取得变长参数。那么python 该如何调用该函数呢。弄了半天也没有发现boost.python如何支持该类型的参数。后来一想,python dict不是就是可变长的参数吗,里边放什么都可以。那么问题就转化问如何传递dict给c++。贴源...
2011-04-29 13:50:00 167
原创 gdb调试运行程序带参数(调用动态链接库),debug过程记录
1.gdb (运行程序名称)例如gdb cbenchmark2.设置运行参数set args -c 1 -n 1 -F ./libaliww.so -l 13.如果是多线程程序set follow-fork-mode child4.设置断点,如果代码是动态链接库.so中的代码系统会提示如提示1b CWWSimulator.cpp:530提示1:No source file named CWWSimulator.cpp.Make breakpoint pending on future shared li
2011-04-27 18:18:00 2946
gdb调试运行程序带参数(调用动态链接库),debug过程记录
1.gdb (运行程序名称)例如gdb cbenchmark2.设置运行参数set args -c 1 -n 1 -F ./libaliww.so -l 13.如果是多线程程序set follow-fork-mode child4.设置断点,如果代码是动态链接库.so中的代码系统会提示如提示1b CWWSimulator.cpp:530提示1:...
2011-04-27 18:18:00 159
gdb调试运行程序带参数(调用动态链接库),debug过程记录
1.gdb (运行程序名称)例如gdb cbenchmark2.设置运行参数set args -c 1 -n 1 -F ./libaliww.so -l 13.如果是多线程程序set follow-fork-mode child4.设置断点,如果代码是动态链接库.so中的代码系统会提示如提示1b CWWSimulator.cpp:530提示1:...
2011-04-27 18:18:00 112
gdb调试运行程序带参数(调用动态链接库),debug过程记录
1.gdb (运行程序名称)例如gdb cbenchmark2.设置运行参数set args -c 1 -n 1 -F ./libaliww.so -l 13.如果是多线程程序set follow-fork-mode child4.设置断点,如果代码是动态链接库.so中的代码系统会提示如提示1b CWWSimulator.cpp:530提示1:...
2011-04-27 18:18:00 107
原创 如何使core dump生效之unlimit及gdb相关命令(C++)
<br />ulimit -a<br />查看当前ulimit状况<br />ulimit -c unlimited<br />设置core不限制size<br />ulimit -a<br />会看到core file size限制如下unlimited<br />core file size (blocks, -c) unlimited<br />data seg size (kbytes, -d) unlimited<br />scheduling pri
2011-04-27 18:12:00 2453
如何使core dump生效之unlimit及gdb相关命令(C++)
ulimit -a查看当前ulimit状况ulimit -c unlimited设置core不限制sizeulimit -a会看到core file size限制如下unlimitedcore file size (blocks, -c) unlimiteddata seg size (kbytes, -d) unlimitedscheduling priority...
2011-04-27 18:12:00 99
如何使core dump生效之unlimit及gdb相关命令(C++)
ulimit -a查看当前ulimit状况ulimit -c unlimited设置core不限制sizeulimit -a会看到core file size限制如下unlimitedcore file size (blocks, -c) unlimiteddata seg size (kbytes, -d) unlimitedscheduling priority...
2011-04-27 18:12:00 98
如何使core dump生效之unlimit及gdb相关命令(C++)
ulimit -a查看当前ulimit状况ulimit -c unlimited设置core不限制sizeulimit -a会看到core file size限制如下unlimitedcore file size (blocks, -c) unlimiteddata seg size (kbytes, -d) unlimitedscheduling priority...
2011-04-27 18:12:00 113
原创 c++ python交互之boost.python 简集之Vector(map)混合使用
<br />C++代码如下:src.cpp<br />#include <iostream><br />#include <string><br />#include <map><br />#include <vector><br /><br />using namespace std;<br /><br />typedef map<string,int> simap;<br />typedef vector<simap> mvector;<br /><br />simap A(
2011-04-21 13:07:00 1455
c++ python交互之boost.python 简集之Vector(map)混合使用
C++代码如下:src.cpp#include <iostream>#include <string>#include <map>#include <vector>using namespace std;typedef map<string,int> simap;typedef vector<sima...
2011-04-21 13:07:00 162
c++ python交互之boost.python 简集之Vector(map)混合使用
C++代码如下:src.cpp#include <iostream>#include <string>#include <map>#include <vector>using namespace std;typedef map<string,int> simap;typedef vector<sima...
2011-04-21 13:07:00 124
c++ python交互之boost.python 简集之Vector(map)混合使用
C++代码如下:src.cpp#include <iostream>#include <string>#include <map>#include <vector>using namespace std;typedef map<string,int> simap;typedef vector<sima...
2011-04-21 13:07:00 112
原创 c++ python交互之boost.python 简集之序列化(pickle)
<br />c++代码:src.cpp<br />#include <string><br />struct World<br />{<br /> World(std::string a_msg) : msg(a_msg) {}<br /> std::string greet() const { return msg; }<br /> std::string msg;<br />};<br /><br />python转换代码:src4py.cpp<br />#in
2011-04-14 19:13:00 2467 3
c++ python交互之boost.python 简集之序列化(pickle)
c++代码:src.cpp#include <string>struct World{ World(std::string a_msg) : msg(a_msg) {} std::string greet() const { return msg; } std::string msg;};python转换代码:src4py.cpp#include...
2011-04-14 19:13:00 170
c++ python交互之boost.python 简集之序列化(pickle)
c++代码:src.cpp#include <string>struct World{ World(std::string a_msg) : msg(a_msg) {} std::string greet() const { return msg; } std::string msg;};python转换代码:src4py.cpp#include...
2011-04-14 19:13:00 93
c++ python交互之boost.python 简集之序列化(pickle)
c++代码:src.cpp#include <string>struct World{ World(std::string a_msg) : msg(a_msg) {} std::string greet() const { return msg; } std::string msg;};python转换代码:src4py.cpp#include...
2011-04-14 19:13:00 228
原创 c++ python交互之boost.python 简集之 vector处理
<br />c++源码:src.cpp<br />#include <vector><br /><br />typedef std::vector<double> dvec;<br /><br />dvec A()<br />{<br /> dvec vec;<br /> vec.push_back(1.0);<br /> return vec;<br />}<br /> <br />python转换代码:src4py.cpp<br /> <br />#incl
2011-04-14 18:59:00 10695
c++ python交互之boost.python 简集之 vector处理
c++源码:src.cpp#include <vector>typedef std::vector<double> dvec;dvec A(){ dvec vec; vec.push_back(1.0); return vec;}python转换代码:src4py.cpp#include <boost/pytho...
2011-04-14 18:59:00 259
yahoo weather feed api应用
2009-02-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人