2016-04-21 47 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 

这是一个跨平台的库,这将在所有的操作系​​统中运行。

相关问题