国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python - Django如何監(jiān)聽(tīng)啟動(dòng),開(kāi)啟另外后臺(tái)線程?

瀏覽:117日期:2022-08-11 13:56:34

問(wèn)題描述

1. 無(wú)法啟動(dòng)的時(shí)候另外啟動(dòng)一個(gè)后臺(tái)線程2. 部分代碼如下:

mqtt_bridge/__init__.py

# coding=utf8from bridge import startimport threadingprint ’import %s thread id: %s’ % (’bridge.start’, threading.current_thread().ident)start() # 重復(fù)啟動(dòng)啊

在Install apps里面加入模塊名,在Django啟動(dòng)的時(shí)候會(huì)自動(dòng)導(dǎo)入

INSTALLED_APPS = ( # ’jet.dashboard’, # ’jet’, ’django.contrib.admin’, ’django.contrib.auth’, ’django.contrib.contenttypes’, ’django.contrib.sessions’, ’django.contrib.messages’, ’django.contrib.staticfiles’, # Django rest framework ’rest_framework’, ’rest_framework.authtoken’, # my apps ’mqtt_bridge’)3. 控制臺(tái)輸出:

import bridge.start thread id: 7124bridge-54 INFO : MQTT client listen loop start! thread id: 8680bridge-28 INFO : MQTT client connected with result code: 0import bridge.start thread id: 8200bridge-54 INFO : MQTT client listen loop start! thread id: 840bridge-28 INFO : MQTT client connected with result code: 0Performing system checks...4. 很明顯這個(gè)模塊被導(dǎo)入了兩次,模塊里面的線程也是開(kāi)啟了兩個(gè),這樣很耗費(fèi)系統(tǒng)資源。5. 其他解決辦法只能去占有端口,然后判斷是否已經(jīng)啟動(dòng),覺(jué)得太低效了。

參考:從Django啟動(dòng)守護(hù)進(jìn)程

問(wèn)題解答

回答1:

如果你想在Django的APP中執(zhí)行某些初始化工作,應(yīng)該在APP的app.py中自定義配置類,然后重寫(xiě)ready()方法即可。

Django的應(yīng)用初始化過(guò)程:https://docs.djangoproject.co...

標(biāo)簽: Python 編程
主站蜘蛛池模板: 栾川县| 正镶白旗| 清水河县| 岐山县| 丰镇市| 西青区| 望谟县| 磐安县| 五常市| 巴彦县| 县级市| 河北区| 清原| 徐闻县| 蒙自县| 广昌县| 晋中市| 高陵县| 林西县| 巢湖市| 修文县| 庆阳市| 融水| 高雄县| 松江区| 山西省| 北京市| 望奎县| 固阳县| 甘南县| 仲巴县| 文山县| 麻城市| 津南区| 古蔺县| 阳城县| 嘉祥县| 大英县| 上林县| 广平县| 沙田区|