2013年10月14日

python 服务端判断客户端异常断开

摘要: 在进行 python 套接字编程时,服务端程序要判断客户端是否异常断开【由于断电或者其他突发情况导致链接中断】,可以通过以下几种方式判断:1、如果通信协议中,设有心跳包,则可记录上次收到时间,将服务端epoll 设为水平触发,这样就会有不断的可读事件触发,在判断读到的字符为空字符时,通过当前时间与上次收到数据时间的时间差,来判断客户端存活否;2、将服务端epoll 设为水平触发,这样就会有不断的可读事件触发,在判断读到的字符为空字符时,向客户端尝试写数据,通过捕捉异常 IOError,来判断客户端的链路是否已断开。3、构造链接类,包含链接句柄和时间字段[客户端最近活跃时间],然后开一个看门狗线 阅读全文

posted @ 2013-10-14 15:20 JohnChain 阅读(3336) 评论(0) 推荐(0) 编辑

2013年10月10日

Linux 下查看某进程的线程数

摘要: 1、查看文件 /proc/${pid}/status2、pstree -p ${pid}3、输入 top -bH -d 3 -p ${pid}top -H手册中说:-H : Threads toggle 加上这个选项启动top,top一行显示一个线程,否则,它一行显示一个进程。4、ps xH手册中说:H Show threads as if they were processes 这样可以查看所有存在的线程。5、ps -mp 手册中说:m Show threads after processes 这样可以查看一个进程起的线程数。 阅读全文

posted @ 2013-10-10 10:58 JohnChain 阅读(405) 评论(0) 推荐(0) 编辑

2013年9月25日

Python socket doesn't close connection properly

摘要: Python socket doesn't close connection properlyThe error information: [Errno 98] Address already in useThe reasion: http://www.unixguide.net/network/socketfaq/4.5.shtmlThe resolution: http://stackoverflow.com/questions/2765152/what-is-the-correct-way-to-close-a-socket-in-python-2-6客户端| |window.. 阅读全文

posted @ 2013-09-25 15:33 JohnChain 阅读(355) 评论(0) 推荐(0) 编辑

2013年9月2日

Linux 查看进程的线程数

摘要: 三种方法:1。 使用top命令,具体用法是 top -H 加上这个选项,top的每一行就不是显示一个进程,而是一个线程。2。 使用ps命令,具体用法是 ps -xH 这样可以查看所有存在的线程,也可以使用grep作进一步的过滤。3。 使用ps命令,具体用法是 ps -mq PID 这样可以看到指定的进程产生的线程数目。更进一步,其实一些系统监控工具,在本质上也是读取的系统产生的文件罢了。比如说进程这个事情,现在假设有进程号为 5000 的进程,查看这个进程的所有具体信息,在哪查看呢?看看这个目录吧,/proc/5000/ 这里面有你所有想要的。其实stat代表着当前的一些信息。使用ps命令来查 阅读全文

posted @ 2013-09-02 14:27 JohnChain 阅读(83014) 评论(2) 推荐(0) 编辑

2013年8月27日

虾米音乐播放器

摘要: 这里是本人虾米音乐: 阅读全文

posted @ 2013-08-27 21:39 JohnChain 阅读(330) 评论(0) 推荐(0) 编辑

2013年8月20日

ImportError: No module named PIL

摘要: add at 2013/08/21 :试试PIL库www.pythonware.com/products/pil/【ps:只有32位的库】ImportError: No module named PIL查到问题解决方案:1:不通过from PIL import Image 而直接 import Image2:查看目录python安装目录C:\Python27\Lib\site-packages下没有PIL目录,说明没安装PIL,通过命令 pip install pil,再次查看那个目录,出现了PIL,安装完成,收工。执行命令pip install pil时,又遇到问题:error: Unabl 阅读全文

posted @ 2013-08-20 21:41 JohnChain 阅读(5612) 评论(0) 推荐(0) 编辑

2013年8月19日

Python程序转exe程序之二——py2exe

摘要: 阅读全文

posted @ 2013-08-19 14:40 JohnChain 阅读(190) 评论(0) 推荐(0) 编辑

python程序转exe程序之一——cx_Freeze

摘要: 原始网页 :http://keliang.blog.51cto.com/3359430/661884本人用的64位系统,一开始装了32位的cx_freeze,结果貌似无法自动找到本地的python安装位置,后改装64位的,便可以自动检测到python的安装位置了但经过上述方法,如果是Tkinter的图形程序,总是会有console控制端窗口出现,还在研究ing 阅读全文

posted @ 2013-08-19 11:00 JohnChain 阅读(439) 评论(0) 推荐(0) 编辑

2013年8月17日

JS 中 this 与闭包的结合产生的问题

摘要: 代码片段一: var name = "The Window"; var object = { name : "My Object", getNameFunc : function(){ return function(){ return this.name; }; } }; alert(object.getNameFunc()());代码片段二: var name = "The Window"; var object = { name : "My Object", getNameFunc : function(){ 阅读全文

posted @ 2013-08-17 15:52 JohnChain 阅读(295) 评论(0) 推荐(0) 编辑

2013年7月25日

MySQL事务(event scheduler)的学习【事务创建之后,没有运行的问题】

摘要: 【本篇文章主要解决的是,MySQL事务创建之后,没有运行的问题】首先从这里开始:http://www.w3schools.in/mysql/event-schedule/,创建了基本的MySQL事务,然后查看了下事务,如下第二条,【这里图片是所有操作后的截图】但遇到一个问题,事实上事务并未被执行,查资料,找到以下文章:http://hi.baidu.com/zhulin014/item/458a3825e3cbb93194f62b12,意外收获,学到了 set autocommit = 0/1; || 手动调用commit; 提交 show variables like 'autoco 阅读全文

posted @ 2013-07-25 18:45 JohnChain 阅读(665) 评论(0) 推荐(0) 编辑

导航