草庐IT

【JavaEE】进程和线程

全部标签

Python 关闭子进程

我有一个关于在用python3编写的脚本中杀死子进程的非常简单的问题。在哪里,如果我有,my_process=Nonedefopen_storage():my_process=subprocess.Popen("waffles.exe")defkill_children():my_process.kill()调用open_storage()后,如果我调用kill_children(),我得到AttributeError:'NoneType'objecthasnoattribute'kill'但如果我有,我的进程=无my_process=subprocess.Popen("waffles

c++ - 如何使用 win32 从多线程上下文初始化线程原语?

我想创建一个静态锁voidfoo(){staticCRITICAL_SECTION*lock=NULL;//thisistheproblem,Icannotcreateanyprimitivetodothiswithwin32threadsstaticlongisInitialized=0;if(InterlockedExchange(&isInitialized,1)==0){//thiswillensurethatlockisinitializedonlyoncelock=(CRITICAL_SECTION*)malloc(sizeof(CRITICAL_SECTION));Ini

Python:从多个子进程异步打印标准输出

我正在测试一种从Python2.7中的多个子进程打印出标准输出的方法。我设置的是一个主进程,目前生成三个子进程并吐出它们的输出。每个子进程都是一个for循环,它会随机休眠一段时间,当它醒来时,会说“SleptforXseconds”。我看到的问题是打印输出似乎是同步的。假设子进程A休眠1秒,子进程B休眠3秒,子进程C休眠10秒。主进程在尝试查看子进程C是否有内容时停止了整整10秒,即使其他两个进程可能已经休眠并打印了一些内容。这是为了模拟一个子进程是否真的比其他两个进程在更长的时间内没有输出。我需要一个适用于Windows的解决方案。我的代码如下:主进程.pyimportsysimpo

ruby - 在 ruby​​ 中使用其 PID 终止进程

我试图在给定时间段后使用其PID终止一个进程,即,如果该进程持续运行超过10分钟,我必须调用一个方法来终止它。我有两个问题:首先,我无法终止进程,我正在使用:Process.kill('INT',pid)但是当我使用QUIT信号而不是时,错误不断弹出,例如Badfiledescriptor或unsupportedname'SIGQUIT'>INT.其次,如何在调用方法终止进程之前设置10分钟计时器?谢谢。 最佳答案 根据您的时间安排,您可以使用线程:Thread.newdosleep10*60beginProcess.kill('Q

c# - 在特定屏幕上启动进程

我正在编写一个在特定屏幕上打开程序的小工具,这样我就可以将我们的监控屏幕(1台机器有2个屏幕)设置为在一夜之间重新启动,并让它在启动时将监控网页恢复到正确的屏幕。我想通过使用.NET的System.Diagnostics.Process类来完成此操作。我已经看到可以打开一个进程,然后使用P/Invokes(Opennotepadtospecificlocationonthescreen,andtodesiredsize?)将它移动到某个地方,但是,我想在应用程序打开之前设置目标屏幕,以便例如在Kiosk模式下使用此设置正确启动Chrome。有人知道怎么做吗?

c - 如何检测进程是否作为服务安装

我已经创建了一个win32应用程序,它应该作为服务和应用程序运行。当我单击并运行它时,它应该作为应用程序运行。当从服务Controller调用时,它应该检测到它并分支以作为服务运行。我如何在不传递参数的情况下检测到这一点?阿布扎德先生 最佳答案 传统(也是最简单)的方法是调用StartServiceCtrlDispatcher()并且,如果失败,则假设您没有作为服务运行。这在实践中效果很好,尽管从技术上讲我不相信Microsoft保证它会这样做。如果您想要更稳健的方法,您可以examineyoursecuritytoken查看它是否

windows - 拥有多个线程池与单个线程池相比有什么好处?

在什么情况下拥有多个线程池与单个线程池相比被认为是最佳实践?我正在使用theMicrosoftthreadpool在Windows上进行开发用于处理文档说明的工作项:Eachprocesscancreatemultipleisolatedpoolswithdifferentcharacteristicsasnecessary.Thereisalsoadefaultpoolforeachprocess.在最初的考虑中,为进程使用一个线程池似乎是更好的选择,这样当其他线程池中可能存在未使用的线程可用时,线程不会不必要地启动。很明显,文档中提到了一个异常(exception)情况——当线程池

有/没有 cmd.exe 的 Java 子进程命令行执行

我的问题包括几件关于在Windows中从Java执行子进程时使用“cmd.exe”、“/c”的事情我不明白。基本上,我找不到关于何时以及为何需要它们的良好解释。我的具体问题:我有一个用于子流程执行的小框架。一种用途是Java应用程序,它“管理”由ProcessBuilders创建的其他几个JVM。其中一项关键要求是,当子进程卡住或托管应用程序终止时,它必须能够杀死子进程。一方面,问题是这样做:newProcessBuilder("java","...").start();原因:Couldnotfindorloadmainclass...就好像系统变量或目录不同(实际上它们不是)。另一方

c - 限制进程对管道的访问 (Windows)

是否可以通过进程限制对命名管道的访问(图像名称或进程ID都可以)?此处的上下文是一个FilterMinidriver,它必须与执行大部分业务逻辑的用户空间服务进行通信。由于此通信是安全敏感的,我想保护它免受外部干扰,而默认情况下,驱动程序创建的命名管道似乎可以通过任何用户空间进程进行通信知道管道的名称(通过静态或动态分析很容易发现)。这是我已经知道的:管道是Windows中的安全对象,因此,它们具有安全描述符。这个安全描述符可以包含一个DACL,它应该限制对该对象的访问。我广泛搜索了条件ACE的文档和示例,我希望它们可以做我想做的事,但我没有找到任何相关内容。编辑:我接受了MSalte

c# - IIS 8 工作进程屏幕大小限制为 1024X768

我有一个在IIS8中的.NETv4.0集成管道64位应用程序池下运行的Web应用程序。我的Web应用程序需要截图(使用Selenium/Chromedrive)。我遇到的问题是图像是由另一个应用程序(动态)生成的,由我的Web应用程序调用并作为IIS工作进程下的子进程启动。碰巧的是,此应用程序需要创建一个与图像一样大的窗口(即GUI窗口),然后才能对其进行快照并将图像数据发送回Web应用程序。这个GUI窗口是在服务器机器上创建的,尽管是不可见的。现在,通常这个应用程序本身运行良好,因为我有一个1920x1200限制的大宽屏显示器。所以操作系统最大窗口大小限制不考虑在内。但是,当应用程序