zoukankan      html  css  js  c++  java
  • Python gevent

    1协程

    import gevent
    from gevent import monkey
    import requests
    from bs4 import BeautifulSoup
    import threading
    monkey.patch_all()


      def get_title(i):
        print(threading.current_thread().name) # 打印出当前线程名称
        
      gevent.joinall([gevent.spawn(get_title, i) for i in range(10)])
    eg2 greenLet

      def foo(message, n):

        gevent.sleep(n) print(message)

        thread1 = Greenlet.spawn(foo, "Hello", 1) #实例化Greenlet

        thread2 = gevent.spawn(foo, "I live!", 2) #实例化gevent,其实也是创建Greenlet实例,只是包装了一下

        thread3 = gevent.spawn(lambda x: (x+1), 2) #一个lambda表达式

      threads = [thread1, thread2, thread3]

      gevent.joinall(threads) #等待所有greenlet完成

    #eg3 组

    import gevent
    from gevent.pool import Group 
    def talk(msg):
        for i in xrange(3):
            print(msg)

     g1 = gevent.spawn(talk, 'bar')

     g2 = gevent.spawn(talk, 'foo')

     g3 = gevent.spawn(talk, 'fizz')

     group = Group() #保持greenlet实例的组运行,连接到没个项目,在其完成后删除 group.add(g1) group.add(g2) group.join()

     group.add(g3) group.join()

    爬虫

    http://www.shuaiyy.cn/2017/11/04/%E6%8A%80%E6%9C%AF/Gevent%E7%88%AC%E8%99%AB%E4%B8%8E%E5%A4%9A%E7%BA%BF%E7%A8%8B%E7%88%AC%E8%99%AB%E5%AF%B9%E6%AF%94/

    指导

    http://sdiehl.github.io/gevent-tutorial/

  • 相关阅读:
    HDU 1213 How Many Tables 并查集 寻找不同集合的个数
    哈哈哈哈哈
    P2251 质量检测(ST表)
    poj3264Balanced Lineup(倍增ST表)
    bzoj1088扫雷(搜索)
    P2258 子矩阵(dp)
    codevs1369 xth 砍树(线段树)
    5.3QBXT模拟赛
    codevs1690 开关灯(线段树)
    zhw大神线段树姿势
  • 原文地址:https://www.cnblogs.com/cbugs/p/9847008.html
Copyright © 2011-2022 走看看