- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 openresty 使用第三方模块
openresty自带的模块使用过程中经常需要一些第三方模块,比如posix这样的模块openresty都没有,需要使用第三方的。openresty使用第三方模块其实很简单,即不需要编译openresty,也不需要编译别的什么模块,在nginx.conf里设置一下路径就可以了。一般使用的模块主要有两种来源,一个是操作系统打包好的,比如debian系可以使用apt安装,rh系可以使用yum安装,另一个是luarocks这样的lua包管理系统带来的。不管是哪一种,按照标准的方法安装好第三方模块。使用相应的
2021-10-20 21:34:00
1499
原创 pro*c 的code和parse编译参数
真是羞愧,用了这么久的pro*c,一直对这两个参数到底是怎么回事一知半解,只是知道code用cpp的时候parse必须用none或者是partial,而且这个时候所有的宿主变量必须在专门的定义部分定义。这就造成在写cpp代码的时候挺麻烦的,比如要写一个函数,函数中需要将参数传递给oracle做查询使用,结果不行,宿主变量需要重新定义,那就只能重新定义一个新的宿主变量,把参数复制过去,再传递给oracle使用。又麻烦效率又低。有的时候为了绕过这个麻烦,只好定义一些全局变量,避免通过参数传递,全局变量用多了也
2021-06-22 07:35:34
211
原创 PL/SQL Developer 的autoselect
pl/sql developer里有autoselect功能,就是在按下f8的时候自动选中当前光标所在行,并执行此行内容。日常工作中打开这个功能可以大大提高工作效率,因为不需要再把手从键盘上移开,拿起鼠标标记选中需要执行的行了。不过这个功能有些小问题,在写了中文注释的时候经常会错误选中上一行的一些数据导致执行失败。有人写文章建议这样安排编辑区:-- 中文注释;select sysdate from dual;就是说在中文注释下面加一行只有分号,这样光标位于下面的sql行时就可以
2021-02-01 22:06:45
351
原创 cygwin 下的 iconv.h 错误处理
cygwin 当前版本下的iconv.h有点问题。那一天编译一个小项目,用到了iconv.h,因为我的源代码是gbk编码的,所以编译参数用到了-finput-charset=gbk结果编译就报错如下:错误:无法从 gbk 转换到 UTF-8#include <iconv.h>使用file /usr/include/iconv.h看了一下:/usr/include/iconv.h: C source, UTF-8 Unicode text打开/usr/include/..
2020-10-12 21:12:28
433
原创 c程序在cygwin、linux下输出乱码问题解决
最近在写一个小工具,跑在linux和windows下,因为没有界面,是后台处理,就直接在linux下开发了,windows下就在cygwin下编译,不需要做任何修改就可以正常工作。美中不足的是在cygwin下输出汉字会乱码。 cygwin编译出来的代码可以在cygwin环境下运行,也可以脱离cygwin环境直接在windows下运行,这两种情况实际运行效果有些差异,在cygwin...
2020-04-04 10:55:49
538
原创 linux守护程序一点体会
这几天遇到一个比较奇怪的故障。一个程序从shell里执行是正常的,可以正常初始化之后转入守护程序然后正常运行。可是如果在守护程序里使用execvp重启动就不能正常工作。今天仔细研究了一下,才发现了问题所在。程序转为守护进程有这样一段代码:for(int i=0;i<3;i++)close(i);这段代码的目的是关闭标准输出、标准输入和标准错误。然后在守护程序使用execvp重新...
2019-10-30 21:09:50
114
原创 mxml的mxmlDelete似乎不能很好释放内存
mxml的mxmlDelete似乎不能很好释放内存第一次使用mxml库来读写一些xml消息,偶尔发现内存占用不断增加,测试了一下,感觉mxmlDelete函数好像不能很好释放内存。···#include <stdio.h>#include <unistd.h>#include <mxml.h>void mymxmlDelete(mxml_node_t...
2019-10-28 22:24:18
594
原创 github 中文处理情况记录
中文文件名支持utf8格式较好,gbk格式可以上传,可以下载,但是在github网站上无法显示,无法预览文件内容中有中文utf8可以正常在github网站上显示,gbk格式如果内容比较少,显示不正常,如果内容比较多,也可以正常显示注释有中文utf8和gbk都可以正常工作git version 2.1.4git config -l 内容(部分)push.default=sim...
2018-11-22 07:25:30
220
原创 crontab小技巧
有一些机器因为应用软件不稳定,需要定期重启,计划每月重启一次。为防止影响业务运行,设置在周日凌晨3点重启,这个时间段对业务的影响最小,同时也避开了备份、维护等夜间工作。开始的时候想着很简单,在crontab里这样加一条就好了:0 3 1-7 * 7 /sbin/reboot就是说每个月1到7号,如果是周日,就在3点重启一下。结果发现这个脚本每到周日必定重启,不管是不是1-7号。man...
2018-11-14 08:52:18
192
原创 代码大全读后感
读书千万不要教条! 工程上我们总结的规则、教条全部都是在一定的生产实践中总结出来的,全部都是有适用范围的,有些规则适用范围比较广,有些规则适用范围比较窄。适用范围比较窄的规则在它的适用范围内是靠谱的,脱离了这个适用范围就可能是不靠谱的,是不合适的。我们在实践中有时候会遇到一些矛盾的规则,这很大可能就是这些规则的适用范围并不相同造成的。学习规则的时候千万要注意适用范围,不然教条主义说的就是...
2018-04-14 21:59:53
636
原创 敏捷方法
敏捷是一种方法论。基本上有竞争的方法论都有适用范围,所有情况下都好的方法论和所有情况下都不好的方法论不需要讨论,也不会有争议,也不会和别的方法论互相竞争。 敏捷是一种应对需求快速多变的方法论,它用用户的实际体验和反馈替代用户提出需求开发方根据需求进行开发的传统模式,它在一些情况下是有效的,同时在另一些情况下是不太有效的。 真正高水平的实施是抛开敏捷和非敏捷这些争议,根据具体情况有针对性采用合适...
2018-03-11 14:10:11
523
原创 使用ps检查命令是否只有一个实例
有一个业务脚本,用lua写的,运行在debian linux下面,要求不可以启动多次。linux下控制一个程序不可以启动多次方法挺多,这一次用了从ps读进程的方法。 很简单,只要一条语句,而且不需要特殊的权限,普通用户就可以使用。 os.execute(“test (psax|grepluatest.lua|grep(psax|grepluatest.lua|grep(ps ax|grep...
2018-03-06 20:36:32
412
原创 写程序不愿意写注释的问题
注释的目的在于提高代码的后期维护性,也就是说花费了当前的工作时间换取以后节约更多的时间。一次性代码、以后不需要维护的代码实际上不需要写注释。 结构清晰简单、很容易维护的代码可以少写甚至不写注释,写多了注释反而会降低工作效率。 代码越复杂越不容易维护,维护的人越是参差不齐,越是需要认真写注释。 判断注释、文档写的够不够其实很容易验证。如果代码将来也还是自己维护,那就找找几年前自己的代码,看
2018-02-03 17:53:26
2756
原创 用ultraedit管理文本文件
工作生活中整理了很多的经验、心得,收集了一些资料,我比较习惯用纯文本文件来记录这些东西,体积小,打开快,查找方便,容易比较文档之间的差异,甚至于我还把很多文档用版本管理工具管理起来,这样归档、备份的问题也解决了。如果平时使用ultraedit来编辑文件文件的话,那还有一个技巧可以帮助大家在文本文件内部更高效的记录、管理资料,这就是ultraedit的“函数列表”功能。函数列表功能平时在编译比如
2018-01-06 17:35:40
2331
原创 stc15f104实现触摸开关
想做个触摸打开,延时关断的小控制器用普通的轻触开关似乎很难看,而且开关也不方便 固定,总不好把控制板放在外面吧?想使用触摸的开关,网上搜索了好久没找到合适的,stc官方文档上有个电容感应开关需要占用2个io,一个产生pwm信号,一个用于ad判断,另外还需要2个电阻2个二极管和1个电容。感觉有点复杂了,尝试了一下,最后只用了一个io口,一个电阻和一个电容搞定了。思路是这样的:
2017-06-11 16:34:30
5247
5
原创 php使用odbc访问oracle
不知道怎么回事,debian下php访问oracle一直没有官方的包只能使用unixodbc来处理了新版本的apache不知道怎么回事SetEnv指令没效果了,用odbc访问oracle的时候就老是报错odbc_connect(): SQL error: [unixODBC][Driver Manager]Can't open lib '/usr/lib/oracle/xe/oracl
2017-05-22 10:21:59
2297
原创 摩尔斯电码练习感想
学习摩尔斯电码有一年多了,进度很慢,真是有点伤心。最开始是用那个Just learn morse code软件来练习的。这个软件使用一个叫Koch的人主张的方法,就是使用一个较高的速度,从两个字符开始练习,每次正确率到了90%就增加一个新的字母,这样直到学会所有的字母。这个方法据说比使用一个很慢的速度,从所有的字符开始练习要效果好。这个软件我用了好久,越练越感觉有点问题。它练习的时候需要我
2017-04-23 21:09:42
3855
2
原创 我对敏捷开发的理解
我对敏捷开发的理解就是快速影响客户的真正需求。以前的开发是重文档的,先做需求调研,整出个需求文档出来,然后根据文档开发。我见过最厉害的需求文档连每个界面包括上面的控件大小、颜色什么的都画出来了。生产中人们发现这种工作方式有一些问题。比如周期太长,需求文档是重要资料,修订它一般需要比较麻烦的控制流程。周期长还有一个不足就是不能适应快速变化的世界,一个需求文档搞半年,需求文档出来的时候业务已经
2017-04-18 07:10:42
2321
原创 慎用英文变量名
今天为了解决一个bug折腾了大半天。这个bug非常怪异,一个类里的一个变量,没人动它居然值就变了,gdb调试了半天找不到哪里有修改。偶然打印出变量的地址才发现异常之处。cc_tajk tajk;char swrq[20];这两行是定义的全局变量,然后swrq的地址居然和tajk类里一个成员变量的地址重合了,奇怪的是在主模块里是正常的,tajk类在一个单独的.cpp中,在ta
2016-09-18 21:54:41
1345
原创 sdcc 51 迁移记录
sdcc 51 迁移记录这是makefile中的核心内容out.ihx:$(object) @echo ------------------连接$^------------------ sdcc --iram-size 256 --xram-size 1024 -o $@ $^%.hex:%.ihx packihx $^ > $@ %.bin:%.hex
2016-09-14 21:26:32
3508
1
原创 素数距离问题
素数距离问题时间限制:3000 ms | 内存限制:65535 KB 难度:2描述 现在给出你一些数,要求你写出一个程序,输出这些整数相邻最近的素数,并输出其相距长度。如果左右有等距离长度素数,则输出左侧的值及相应距离。 如果输入的整数本身就是素数,则输出该素数本身,距离输出0输入第一行给出测试数据组数N(0接下来的N行每行有一个整数M(0其中A表示离相应测
2016-04-07 14:50:31
574
原创 debian设置非utc
我们普通人设置时间不需要用utc的,所以以前装完系统要把/etc/default/rcS里的utc设置成nodebian 7这个设置没有了,其实我真有点不明白,这些人没事为什么经常改配置方法呢?找了半天才找到/etc/adjtime文件,这里最后一行是utc,把它改成local应该就可以了当然,手动修改这个文件似乎不是正道,那就用hwclock --localtime --adju
2014-02-25 10:42:56
1759
原创 ibm 3650 m3上安装debian
<br />新到的ibm 3650 m3,要装debian,下了最新的debian 507的网络安装盘<br />扫描硬件时发现报告少了一个叫bnx2-09-4.0.5.fw的文件<br />第一次在安装debian的时候发现少文件,仔细看了一下,原来是因为版权问题,不能在安装盘中放这个no-free的文件<br />去debian网站上找了找,在<br />http://cdimage.debian.org/cdimage/unofficial/non-free/firmware/lenny/curren
2011-01-14 13:28:00
1219
dbt 把数据库结构提取到txt文件中
2010-06-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人