摘要: 使用yield完成多任务 使用greenlet完成多任务 如果没有安装,则 pip install greenlet 使用gevent完成多任务 首先使用 pip install gevent 进行安装 gevent是对greenlet的再次封装,使用起来更加简便,当有耗时操作时会自动切换到其他协程 阅读全文
posted @ 2019-08-26 16:32 三国小梦 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 分析 我们都知道一个可迭代对象可以通过iter()可以返回一个迭代器。 如果想要一个对象称为可迭代对象,即可以使用for,那么必须实现__iter __()方法。 在一个类的实例对象想要变成迭代器,就必须实现__iter__()和__next__()方法。 调用iter()时,在对象内部默认调用__ 阅读全文
posted @ 2019-08-26 10:25 三国小梦 阅读(698) 评论(0) 推荐(0) 编辑
摘要: UDP UDP是面向无连接的通讯协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发送。 UDP传输数据时有大小限制,每个被传输的数据报必须限定在64KB之内。 UDP是一个不可靠的协议,发送方所发送的数据报并不一定以相同的次序到达接收方。 udp通信模型中,在通信开 阅读全文
posted @ 2019-08-25 16:11 三国小梦 阅读(772) 评论(0) 推荐(0) 编辑
摘要: re模块的使用 re.match 从头匹配一个符合规则的字符串,从起始位置开始匹配,匹配成功返回一个对象,未匹配成功返回None。 或者这样写 表示字符 |字符| 功能 | | | | | . | 匹配任意一个字符(除了\n) | | [ ] |匹配[ ]中列举的字符| | \d |匹配数字,即0 阅读全文
posted @ 2019-08-25 10:41 三国小梦 阅读(348) 评论(0) 推荐(1) 编辑
摘要: 多线程开发可能遇到的问题 假设两个线程t1和t2都要对num=0进行增1运算,t1和t2都各对num修改1000000次,num的最终的结果应该为2000000。但是由于是多线程访问,有可能出现下面情况: 运行结果可能不一样,但是结果往往不是2000000。问题产生的原因就是没有控制多个线程对同一资 阅读全文
posted @ 2019-08-24 16:49 三国小梦 阅读(1165) 评论(0) 推荐(0) 编辑
摘要: Python3 线程中常用的两个模块为: _thread threading(推荐使用) 使用Thread类创建 说明:主线程会等待所有的子线程结束后才结束 使用Thread子类创建 为了让每个线程的封装性更完美,所以使用threading模块时,往往会定义一个新的子类class,只要继承threa 阅读全文
posted @ 2019-08-24 09:17 三国小梦 阅读(1723) 评论(0) 推荐(0) 编辑
摘要: 我们知道进程之间的数据是互不影响的,但有时我们需要在进程之间通信,那怎么办呢? 认识Queue 可以使用multiprocessing模块的Queue实现多进程之间的数据传递,Queue本身是一个消息列队程序,首先用一个小实例来演示一下Queue的工作原理: put: get: 说明: get (s 阅读全文
posted @ 2019-08-23 14:56 三国小梦 阅读(821) 评论(0) 推荐(0) 编辑
摘要: 在新创建的子进程中,会把父进程的所有信息复制一份,它们之间的数据互不影响。 使用os.fork()创建 该方式只能用于Unix/Linux操作系统中,在windows不能用。 使用Process类类创建 multiprocessing模块提供了一个Process类来代表一个进程对象,下面的例子演示了 阅读全文
posted @ 2019-08-23 10:21 三国小梦 阅读(969) 评论(0) 推荐(0) 编辑
摘要: 迭代器 迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 可迭代对象 以直接作用于 for 循环的数据类型有以下几种: 一类是集合数据类型,如 list 、 tuple 、 dict 、 s 阅读全文
posted @ 2019-08-22 15:19 三国小梦 阅读(342) 评论(0) 推荐(0) 编辑
摘要: String String类对象一旦创建就不可更改 。 String对象表示不可修改的Unicode编码字符串。 Java中双引号括起来的字符串也被当做String对象。 例如: StringBuffer StringBuffer对象的内容是可以改变的 。 如果经常对字符串内容进行修改,则使用Str 阅读全文
posted @ 2019-08-22 08:53 三国小梦 阅读(464) 评论(0) 推荐(0) 编辑