簡體   English   中英

python time.sleep() 不起作用 linux 服務

[英]python time.sleep() doesn't work linux service

您好,我正在嘗試在 python 中創建 linux ubuntu arm64 服務。 我的問題很簡單。 我稱該服務為“鮑勃”

我的服務代碼是:

import time
for i in range(0,99999999):
    print("hello", i)
    time.sleep(5)

在此處輸入圖像描述 然后在終端:

systemctl restart bob
systemctl status bob

我想看到的是有關活動服務的信息和每 5 秒打招呼的服務 [number],但它只顯示有關活動服務“正常工作”的信息。

當我在沒有睡眠 function 的情況下嘗試它時:

import time
for i in range(0,99999999):
    print("hello", i)

在此處輸入圖像描述 它工作得很好。 狀態和“你好 41234”。 但有了它,它就沒有了。 任何地方都沒有出現錯誤,並且服務似乎使用了 cpu,但沒有 output。

您應該使用sys.stdout.flush()刷新緩沖區並將內容打印到終端。

例如,

import sys
import time
  
for i in range(10):
    print(i, end =' ')
    sys.stdout.flush()
    time.sleep(1)

如果沒有sys.stdout.flush() ,它將等到第 10 秒,屆時,它將把所有內容打印到終端。

更多細節在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM