2016-04-21 46 views
2

我在Maya中使用Maya Python編寫了一些代碼來渲染超過2,000張圖片。由於Maya有很多工作要完成,所以在漫長的渲染過程中,Maya可能會崩潰。所以我必須製作一個模塊來監視Maya。如果Maya卡住了,模塊必須保留Maya並修改錯誤。我想知道我可以使用什麼工具來實現此功能。我應該用什麼樣的語言來編寫這個模塊?如何監視在我的電腦上運行的maya程序?

回答

0

使用一些renderfarm程序作爲截止日期或其他東西。

1

便宜的解決方案只是在主腳本運行時將日誌寫出到文本文件中,並在其更改時使用單獨的監視進程來檢查該文件。這是一個StackOverflow question,它展示瞭如何在Python中完成它。在你的情況下,如果長時間沒有更新日誌文件,你可以繼續輪詢文件並強制重啓進程。

0
  1. 如果你需要一個準備使用的應用程序您的需求,比RenderBOX - Advanced Rendering Manager其免費走。

  2. 如果你想監視maya程序運行在你的電腦上,你可以使用psutil python庫。

    psutil(進程和系統實用程序)是一個跨平臺的庫,用於在Python中檢索有關運行進程和系統利用率(CPU,內存,磁盤,網絡)的信息。它主要用於系統監視,分析和限制流程資源以及運行流程的管理。

所有你需要做的是: 尋找 「maya.exe」, 「mayabatch.exe」,在運行過程中 「render.exe」。 和快速的方式來獲得名稱和正在運行的進程的現狀是:

import psutil 

process_id_list = psutil.pids() 

for process_id in process_id_list: 
    process = psutil.Process(process_id) 
    name = process.name() 
    status = process.status() 
    print name, status 

這是一個跨平臺的庫,這將在所有的操作系​​統中運行。

相關問題