python进程无故死掉_Python 为什么进程会自动启动,杀不死?

现象是这样的,有些时候python运行死了,就用任务管理器强制结束

过几秒又会自动启动出好多,可能一个,两个,三个python进程出来

杀了他们,过会又出来,如此反复,不能真正的杀死pytohn

有时候只是会多出几个来,杀了就不会再自启了,但是像永远杀不死的情况也是有发生过的

这样谁受得了啊,无限自启,还越来越多

有人遇到类似的问题吗?怎么解决?

就一段普通的代码(代码会造成线程死锁):

import threading

import time

class MyThread(threading.Thread):

def run(self):

global num

time.sleep(1)

if mutex.acquire(1):

num = num+1

msg = self.name+' run!'

print(msg)

# 卡在这里了,自身不release就要接着acquire,不可能

mutex.acquire()

print('acquire')

mutex.release()

print('release 1')

mutex.release()

print('release 2')

num = 0

mutex = threading.Lock()

def test():

for i in range(5):

t = MyThread()

t.start()

if __name__ == '__main__':

test()

换成正常运行的也是会出现类似的问题(这个可以正常运行):

import threading

import time

class MyThread(threading.Thread):

def run(self):

global num

time.sleep(1)

if mutex.acquire(1):

num = num+1

msg = self.name+' run!'

print(msg)

# 卡在这里了,自身不release就要接着acquire,不可能

# mutex.acquire()

# print('acquire')

# mutex.release()

# print('release 1')

mutex.release()

print('release 2')

num = 0

mutex = threading.Lock()

def test():

for i in range(5):

t = MyThread()

t.start()

if __name__ == '__main__':

test()

但是还是会出现上面的情况

kp是cmd命令:

taskkill /F /IM python.exe()

有时候又好了,比如现在:

就是不知道为什么会这样,明明程序中并没有用多进程还给我这么搞

代码不限于上面的那个,有些时候写些其他东西也会出现类似的情况

求解,谢谢!

是win7下,python3.6 64位,包装了好多(应该不是包的问题吧),python我觉得我的也没啥问题

我可能就是不知道pytohn运行机制吧

貌似找到了一个怀疑的原因:

我是用sublime text3写python,装过这些插件:

原来就发现某个插件(记不得名称了),会自动查找我代码的语法错误,它会运行我本地的pytohn,造成运行好几个python进程,造成我cpu占用过高(其实也没多高),然后我一怒之下就把那插件给卸载了

刚发生的状况为,我先kp掉所有的pytohn进程,然后切换回sublime text3中,发现sub test 假死,卡了1秒多,然后多了几个pytohn进程,十有八九吧,不是代码的问题233333

后来我关了sub,kp掉pytohn,打开sub,又多几个python,没跑了,十有八九,要不sub的问题,要不sub插件的问题

有了解sub插件的大佬嘛?求解释,大概应该是哪几个插件有问题?

还是我又理解错了,不是sub的问题??

谢谢

对了,刚关了sub,python就没了....

我是不是该抛弃sub了....

终于知道为啥要用vim写代码了,我感觉我代码有问题都是运行后编译器高速我的,sub感觉还算好用吧,要不就是我强迫症2333333

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值