2012年5月23日

摘要: 1 以线程安全模式运行代码 Twisted中大部分代码都不是线程安全例如protocol向transport写入数据就不是线程安全因此我们需要种思路方法来在主事件循环中进行调度者可以使用twisted.ernet.erfaces.IReactorThreads.callFromThread 来实现:from twisted.ernet import reactordef notThreadSafe(x): """做些非线程安全事情""" # ...def threadSafeScheduler: """以 阅读全文
posted @ 2012-05-23 17:37 很多不懂呀。。 阅读(2203) 评论(1) 推荐(0) 编辑
摘要: 继承具有如下优点:实现新的类非常容易,因为基类的大部分功能都可以通过继承关系自动赋予派生类;修改或者扩展继承来的实现非常容易;只要修改父类,派生的类的行为就同时被修改了。初学面向对象编程的人会认为继承真是一个好东西,是实现复用的最好手段。但是随着应用的深入就会发现继承有很多缺点:继承破坏封装性。基类的很多内部细节都是对派生类可见的,因此这种复用是“白箱复用”;如果基类的实现发生改变,那么派生类的实现也将随之改变。这样就导致了子类行为的不可预知性;从基类继承来的实现是无法在运行期动态改变的,因此降低了应用的灵活性。 继承关系有很多缺点,如果合理使用组合则可以有效的避免这些缺点,使用组合关系将系统 阅读全文
posted @ 2012-05-23 11:20 很多不懂呀。。 阅读(1438) 评论(0) 推荐(0) 编辑
摘要: class AddrBookEntry(object): "地址本" def __init__(self,name,phone): self.name=name self.phone=phone print "初始化:姓名 ",name,"电话 ",phone def updatePhone(self,newphone): self.phone=newphone; print "更改后电话: ",phone#继承class EmplAddBookEntry(AddBookEntry): "员工地址薄&qu 阅读全文
posted @ 2012-05-23 11:16 很多不懂呀。。 阅读(1124) 评论(0) 推荐(0) 编辑

导航