页面载入中,请稍后...

现在位置 >首页 > 所有属于twisted分类文章
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,104 views+
twisted知识
一、Twisted基本模型 Twisted 网络编程框架是一种基于事件的网络编程框架,用户需要继承特定的类,并重载其中的方法来处理网络通信 中可能出现的各种情况。 Twisted的网络通信模型 最基本的也要由三部分组成:反应器(reactor)、协议(protocol)、工厂(factory)。 1、其中反应器reactor用来执行事件循环,分发事件处理等 等,每个应用程序中一般只能启动一个reactor。 2、协议用来完成与一个已经连接成功的主机的交互功能,主要有数据的接收和发送功能。连接的断开事件也可以在这 里处理。注意是在连接建立之后p...
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,090 views+
twisted的学习资料
http://wiki.woodpecker.org.cn/moin/PyTwisted http://www.ibm.com/developerworks/cn/linux/network/l-twist/part1/index.html http://www.ibm.com/developerworks/cn/linux/network/l-twist/part2/ http://www.ibm.com/developerworks/cn/linux/network/l-twist/part3/ http://www.ibm.com/developerworks/cn/linux/network/l-twist/part4/ http://blog.csdn.net/gashero http://wiki.woodpecker.org.cn/moin/PyTwisted/LowLevelNetworkingEventLoop#A.2BXwJrZX8Wegs.28Asynchronous_Programming.29
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,299 views+
用twisted为未来安排任务(Scheduling tasks for the future)
我们想再x秒后执行一个任务,可以使用twisted.internet.interfaces.IReactorTime: from twisted.internet import reactor def f(s): print "this will run 3.5 seconds after it was scheduled: %s" % s reactor.callLater(3.5, f, "hello, world") 如果想每x秒就重复执行一个任务,可以使用twisted.internet.task.LoopingCall: from twisted.internet import task def runEverySecond(): print "a second has passed" l = task.LoopingCall(runEverySecond) l.start(1.0) # call every second # l...
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,351 views+
Twisted的初步介绍
http://wiki.woodpecker.org.cn/moin/LawMe/2005-12-01 http://www.linuxforum.net/forum/showflat.php?Cat=&Board=python&Number=589018&page=&view=&sb=&o=&fpart=1&vc=1 1. 啃嚼Twisted的初感 啃嚼快一星期了,不再痛苦难受,逐渐尝出twisted的香甜美味、柔顺可口,开始适应twisted的套路。 twisted的套路,有哪些显著特点呢?接下去说说我品尝出的滋味。 前面把twisted的套路概括成一句话,“一个中心,两个基本点”,现在就从这个“中心”聊起。 Twisted 官方说,“ Twi...
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,639 views+
twisted学习笔记之二: 延迟对象deferred
原帖地址:http://blog.chinaunix.net/u2/79621/showart_1216305.html 简介 周末休息了两天,啥都没做,就看了个《大宅门》,自觉自己太堕落。今天上班也不顾老板的催促,看了一天的twisted。用twisted也有几周了,多多少少还是有些感悟,在这里写出来与大家分享,如果什么地方说的不对,还请互相帮助,大家共同进步~~ 好了,废话不多说,进入正题。今天我们讨论的是twisted的里面的又一大核心基础–deferred。 Twisted 官方称,“Twisted is event-based, asynchronous framework ”。这个“异步”功能的代表就是...
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,320 views+
twisted学习笔记之一:综述和reactor概述
原帖地址: http://blog.chinaunix.net/u2/79621/showart_1205694.html 我是今年暑假开始正式加入到python学习正营的。一开始学习,我就深深的喜欢上了它。因为以前一直是用c和c++,虽然也学过java但课程结束后就没再用过了。所以用的最多的还是c和c++,这两种语言我都是很喜欢的,感觉各自都有自己的优点。当看了《thinking in c++》之后,我才真正知道了c++的强大和很多奥妙,c++是一门智者使用的编程语言。任何一个想真正领略c++灵魂的人估计都得十年八年的修为,否则说自己精通c++估计也就是在侮辱自己吧。 py...
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,857 views+
使用twisted中的twistd托管应用到daemon运行
原地址: http://gashero.javaeye.com/blog/457971 ==================== 使用twistd托管应用 ==================== :作者: gashero :日期: 2009-08-26 .. contents:: 目录 .. sectnum:: 简介 —— 系统开发中经常遇到要把应用放到daemon中运行的情况,话说这个倒是不难,有很多现成的模块可用,就算是自己写也没几行代码。但是daemon托管的 同时再捕捉所有屏幕输出日志,自动切换到其他uid/gid,切换运行目录chroot等等高级功能就不那么容易自己搞定了。 而使用twisted框架的daemon托管程序twistd来执...
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,776 views+
使用twisted.python.log日志
使用twisted.python.log日志 目录 1 简单使用 1.1 日志与twistd 1.2 日志文件 2 编写日志监视器 版本: 2.4.0 1 简单使用 Twisted提供了一个简单而且可移植的日志系统叫做 twisted.python.log 。它包含3个函数: msg 记录一条信息,例如: from twisted.python import log log.msg("hello, world") err 把错误写入日志,包括traceback信息。你可以传递一个 failure 或者异常的实例,甚至什么都没有。如果传递其他的东西则会通过 repr() 函数获得字符串来显示。如果什么都不传递则会自动构造一...
阅读全文
cat_ico36 category cat_ico16 category
发表于781 天前 Python, twisted 评论关闭 ⁄ 被围观 1,307 views+
再探twisted按天进行日志切分(zt)
http://www.tabex.org/archives/187 明确下标题的含义: 在mc@sohu,有twisted写的大中小各种型号的app,这些app都由twistd来启动,启动参数大概是这样子滴: 1 #!/bin/bash 2 # vim:fdm=marker 3 #Author: alvayang <alvayang@tabex.org> 4 #Last Change: 5 #Description: 6 kill -9 `cat twlist.pid` 7 /opt/pool/bin/twistd --reactor=epoll --no_save --python=main.py \ 8 --pidfile=twlist.pid --logfile=ip.log 这是我在研...
阅读全文