有沒有辦法在必要時通過時間填充來執行具有一致執行時間的python腳本?

pani3610

我知道任何 python 程序的執行時間都取決於操作系統並且不能由用戶控制。但是我想要的是程序在執行時間低於必要時進入睡眠狀態。

假設我有一個 python 程序,它最後有一個 print 語句。

def foo():
    ...
    ...
    return(ans)

print(foo())

使用 timeit 我評估了 foo 的執行時間範圍。讓它從 0.8 秒到 5.5 秒。為了安全起見,我選擇完整腳本的執行時間為 10 秒。

如果 foo 的執行在 0.8 秒內完成,我希望程序在 print 語句之前添加 9.2 秒的延遲。同樣,如果執行在 5.5 秒內完成,則延遲 4.5 秒。

破碎基準

您可以測量foo()使用兩次調用的執行時間time.time()然後,您可以使用計算的執行時間來計算停止程序執行的時間量foo()

import time

def foo():
    ...

start_time = time.time()
foo()
end_time = time.time()
if end_time - start_time < 10:
    time.sleep(10 - (end_time - start_time))

請注意,我們使用time.sleep()而不是while循環來重複檢查是否已經過了足夠的時間,因為忙等待會浪費資源

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

有沒有辦法列出所有nodejs函數執行時間?

有沒有辦法讓函數停止執行,直到 setTimeout() 時間結束

有沒有可以每天在給定時間執行python代碼的網站?

有沒有辦法設置 SSH 配置文件來自動執行 GPG 簽名?

有沒有辦法通過 require 包含 esm 腳本?

查詢需要很多時間來執行 Laravel

如何同時執行 django runserver 和 python 腳本(在 cmd 中的一行)

沒有 COMMIT 事務的 Python Sqlite3 執行腳本(sql_script)

有沒有辦法以特定的時間間隔在 NodeJS 上安排作業

時區:有沒有辦法在 Python 中用日期時間打印 GMT(格林威治標準時間)?

有沒有辦法通過對 SAS 中另一個變量的數據進行分組來創建新變量?

有沒有辦法在處理“循環”時設置間隔

Lambda 執行時間問題

如何通過將非數字字符串轉換為整數來對它們進行排序?有沒有辦法在訂購時將字符串轉換為唯一的整數?

從另一個腳本運行一個 python 腳本,其中命令行參數具有可執行文件

有沒有辦法在 Infra 元數據表中獲得當前運行的 Informatica 工作流的估計完成時間

有沒有辦法在 html 站點上運行多個腳本

有沒有辦法在應用程序運行時更改語言

有沒有辦法在用戶關閉網頁時運行 useEffect 清理?

有沒有辦法可以從python中'mm/dd/yy'格式的日期中減去一段時間?

在 Django 遷移中執行 RunPython 時“對像沒有屬性”

執行 jar 時出錯:“沒有主要清單屬性”

有沒有辦法通過 UMAP iframe 中的 CSS 元素進行選擇?

當在子shell腳本中運行時,scp沒有列出

在 Django 的 ORM 中,有沒有辦法檢測代碼是否在事務內執行?

有沒有辦法在 Terraform 中使用 CloudWatch 警報執行 EC2 操作?

如果 input[type="file"] 上傳了文件,在 JS/React 中有沒有辦法執行代碼

用每行 * 代碼的執行時間來分析 Rust?

冷啟動時間與無服務器計算中的函數執行時間有關嗎?