zoukankan      html  css  js  c++  java
  • python多线程的坑

    问题记录

    1、在for循环下创建线程,会一次性全部创建,消耗内存

    import threading

    def test():

      print('test')

    for i in range(1000);

      t = threading.Thread(target=test)

    # 此时已经新建了1000个线程对象

    2、多线程不能同时操作一个类实例

    一个类被实例化为一个对象后,该对象的方法不能被多进程,多线程同时调用。

    但是,当该方法被赋给一个变量后,就可以被同时调用了。

    示例如下:

    import threading

    class Test(object):

      def test():

        print('test')

    t = Test()

    for i in range(4):

      t = threading.Thread(target=t.test)

    #  AttributeError: 'Thread' object has no attribute 'test'

    x = t.test

    for i in range(4):

      t = threading.Thread(target=x)

    # ok

  • 相关阅读:
    CentOS7.4部署Python3+Django+uWSGI+Nginx
    测试:ATM
    JDBC_增删改
    HTTP请求状态码
    Servlet2
    Java日期时间3
    Servlet1
    安装Tomcat
    Java日期时间2
    广度优先遍历
  • 原文地址:https://www.cnblogs.com/holden1/p/10712610.html
Copyright © 2011-2022 走看看