如何监控计算机中运行的maya程序?

时间:2016-04-21 03:27:46

标签: python mfc rendering maya monitor

我在Maya中使用Maya Python编写了一些代码来渲染超过2,000张图片。由于Maya有很多工作需要完成,因此在漫长的渲染过程中,Maya可能会崩溃。所以我必须制作一个模块来监控Maya。如果Maya卡住,该模块必须保持Maya继续并修改错误。我想知道可以使用哪些工具来实现此功能。我应该用什么样的语言来编写这个模块?

3 个答案:

答案 0 :(得分:1)

廉价的解决方案就是在主脚本运行时将日志写入文本文件,并在更改时使用单独的监视进程检查该文件。这是一个StackOverflow question,展示了如何在Python中完成它。在您的情况下,您可以继续轮询文件,并在长时间过去而不更新日志文件的情况下强行重新启动该过程。

答案 1 :(得分:0)

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

答案 2 :(得分:0)

  1. 如果您需要随时可以使用的应用程序,而不是使用RenderBOX - Advanced Rendering Manager免费。

  2. 如果你想监视maya程序在你的电脑上运行,你可以使用psutil python库。

    psutil(进程和系统实用程序)是一个跨平台库,用于在Python中检索有关正在运行的进程和系统利用率(CPU,内存,磁盘,网络)的信息。它主要用于系统监视,分析和限制流程资源以及运行流程的管理。

  3. 您需要做的就是: 寻找" 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
    

    这是一个跨平台的库,因此可以在所有操作系统中使用。