posted @ 2014-10-20 10:47 浮萍晓生 阅读(712) 评论(0) 推荐(0) 编辑
摘要:
#ifndef _PTHREAD_WRAP_H#define _PTHREAD_WRAP_H#include class hm_pthread_mutex{public: hm_pthread_mutex() { pthread_mutex_init(&m_mutex, 0); } ~hm_pth... 阅读全文
摘要:
这个地方有好多的不明白,也没仔细的看懂代码,希望有牛人指点。先记录几个issue 1、after_write recv many(>10000) ECANCELEDin my write_cb i get status,that is uv_err_name eq ECALCELED,it is UV_ECALCELED?can i close the (uv_write_t*)req->handle?I'm not 100% sure what you mean. If you have e.g. a uv_tcp_t or uv_pipe_t handle and yo 阅读全文
posted @ 2014-01-02 17:13 浮萍晓生 阅读(1346) 评论(0) 推荐(0) 编辑
摘要:
日志对于软件开发者几乎是绕不开的墙,一个强大的程序需要开发者能够随时监控到每个细节,而对于记录程序的运行状态、操作记录等等更是必不可少的,当然,有很多高大上的开源日志系统可供选择,在开源中国上能搜一大堆... 对于后台程序,我就需要一个简单、实用、稳定日志,不需要各种花里胡哨的功能,控制台输出也无妨,但最好能落地便于查找。基于此类需求,就自己开发了一个日志组件,能够融合到各类后台系统中,包含了常规的功能,能满足最低需求啦。 功能主要包括:可同步/异步记录日志、落地/控制台(可高亮)输出、简单格式化、读取/写入一组日志到指定文件中,具体的看贴上的代码,是否对于开发者是否有帮助,请批评指正... 阅读全文
posted @ 2013-12-31 10:57 浮萍晓生 阅读(373) 评论(0) 推荐(0) 编辑
摘要:
对于后台运行的程序,比如基于C/S架构的服务器、各种监控系统的程序、或者是程序额外的功能需要后台运行来实现,在Windows平台中,服务经常会用到,这种对于需要24×7运行的程序是必备的,至少本人经常需要运用windows服务来搭建后台程序。于是查阅网上的各种资料,发现有不少的参考实例,但是使用起来有各种问题,不少是这些作者或者使用者对Windows NT Service API接口运用的不熟练或者不清楚,导致自己花费很多时间在理解这些错误的实例当中,不过折腾到最后,还是从错误中得到不少教训的。所以为了方便以后能够直接使用,不再做重复的工作,便在工作之余将Windows NT Ser 阅读全文
posted @ 2013-12-30 18:18 浮萍晓生 阅读(1168) 评论(0) 推荐(0) 编辑
摘要:
#include #include bool IsAppRunning(){ bool m_running = false; HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); if (hSnapshot == INVALID_HANDLE_VALUE) { return m_running; } PROCESSENTRY32 pe = {0}; pe.dwSize = sizeof(PROCESSENTRY32); if (!Process32Fi... 阅读全文
posted @ 2013-12-18 16:14 浮萍晓生 阅读(252) 评论(0) 推荐(0) 编辑
摘要:
经常会碰到线程结束的难题,关系到资源的正确分配/释放,变量的引用,锁/条件变量...于是发现有一次在析构函数中通知结束线程,然后等待线程执行完毕,切换到线程运行时竟然崩溃。最初以为在析构函数中结束是有问题的,所以写了下面的代码进行测。剥离各种复杂的业务代码,经过简单测试,没有任何问题。仔细分析其实是自己释放资源的顺序不对,把线程的运行环境和变量预先销毁了,然后在等待线程执行完毕时注定出错! 以为自己算是一个码字高手了,但还是漫不经心的犯各种小问题。 1 #include 2 #include 3 #include 4 #include 5 6 class simple_th... 阅读全文
posted @ 2013-12-05 18:03 浮萍晓生 阅读(1071) 评论(0) 推荐(0) 编辑