草庐IT

【JavaEE】进程和线程

全部标签

c++ - 是否可以使用 c/c++ 创建一个即使主线程在 Windows 中退出也不会退出的线程?

如上图所示,一旦主线程死亡,所有其他线程将自动退出。是否可以创建一个永不死亡的线程? 最佳答案 你可以,但你可能不应该;它只会让人们感到困惑。Hereisagoodexplanation这是如何与Win32和CRT一起工作的。 关于c++-是否可以使用c/c++创建一个即使主线程在Windows中退出也不会退出的线程?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3695400

windows - 在 Windows 上捕获子进程异常

我正在开发一个多平台C++模糊测试应用程序。该应用程序生成一个子进程并检查它是否意外停止。我已经设法在linux上做到这一点,但是,windows异常处理机制让我很难做。我的代码现在执行以下操作:-调用CreateProcess生成进程。-WaitForSingleObject等待它终止。-然后调用GetExitCodeProcess并检查退出代码是否对应于异常。一切正常,我已经用空解引用测试应用程序对其进行了测试,我可以优雅地捕获异常。但是,每次我对此进行测试时,都会出现一个Windows错误消息框,告诉我发送或不发送错误报告。由于模糊器应该是一个自动测试应用程序,我需要以某种方式禁

windows - 在windows中创建后台进程

如何以编程方式让进程进入后台?我想要的是让用户双击进程可执行文件,它只是进入后台......并且在执行时不打开窗口。VisualC++中的任何代码片段都会非常有帮助 最佳答案 您是否考虑过创建一个WindowsService反而?它们专门设计用于在不显示UI的情况下在后台运行。否则,只是createanapplicationwithoutawindow. 关于windows-在windows中创建后台进程,我们在StackOverflow上找到一个类似的问题:

Windows:获取正在运行的进程的版本

我想了解正在使用的所有程序以及正在使用的该软件的版本数。我不需要知道确切的版本号(尽管这会很好),只需要知道两个东西是不同的版本(或构建)即可。因为我对每个程序一无所知,所以我需要以通用方式完成此操作。这是怎么做到的? 最佳答案 这是一个很笼统的问题,所以我会给你一个笼统的答案。您将需要执行以下操作:通过调用EnumProcesses()枚举所有进程.对于每个进程ID,OpenProcess()获取进程句柄。每个进程句柄调用GetModuleFileNameEx()获取进程的主要可执行文件名。最后调用GetFileVersionIn

c++ - 如何限制特定进程的cpu使用率?

例如,对于WindowsC++中的特定进程,我如何将CPU使用率限制在10%? 最佳答案 您可以使用Sleep(x)-会减慢程序执行速度,但会释放CPU周期其中x是以毫秒为单位的时间 关于c++-如何限制特定进程的cpu使用率?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5579992/

c# - 从线程启动时模态弹出窗口失败——CSharp WPF

要批量上传多个文件,我有一段CSharpWPF代码,它生成线程以允许并行上传文件。如果上传发生错误,将使用MessageBox弹出一条消息。这很好用。但最近我们决定自定义MessageBox的外观。我发现当使用ShowDialog()打开我们新的自定义WPFMessageBox窗口时会抛出一个错误,提示无法启动GUI。这仅在派生线程中的代码尝试打开自定义消息窗口时发生——当从主线程打开自定义消息框时我没有看到问题。我的临时解决方法是捕获自定义对话框启动时发生的任何错误,并选择调用标准MessageBox.Show()来显示消息。行得通。我不确定为什么可以使用标准MessageBox.S

windows - 创建一个 Windows 进程以静默检查丢失的 DLL

我想检查是否为可执行文件安装了所有必需的DLL,因此我使用CreateProcess运行它,并检查退出代码。问题:Windows显示一个弹出窗口,提示未找到DLL,然后显示一个弹出窗口,提示程序已停止运行。如何避免所有这些错误弹出窗口? 最佳答案 您需要调用SetErrorMode传递SEM_FAILCRITICALERRORS。SetErrorMode是一个使用起来有点棘手的API,因为您需要将新模式与现有模式合并。陈峰explainshowtodoitcorrectly. 关于win

windows - 获取有关 Windows 上其他进程的信息

如何获取有关Windows中其他(与perl.exe无关)进程的信息?比如说,我有一个脚本想要监视有关所有firefox.exe进程的一些基本信息。我想做这样的事情:#!perl-wusewarnings;usestrict;useMagicModuleqw/read_process_info/;useData::Dumper;my$ps=MagicModule::read_process_info();printDumper($ps);然后看到类似的东西:$VAR=[{ProcessName=>'firefox.exe',PID=>1234,PirvateBytes=>2115354

c - 使用 C 的 Windows 进程间通信 (IPC)

我有一个用C语言和MicrosoftVisualC++编写的旧程序,我需要实现某种“保持事件”,因此我能够将进程间通信接收到一个新程序中,该程序将终止并重新启动如果在过去5秒内没有收到消息,则第一个。问题是我一直在寻找任何C语言的WindowsIPC教程或示例,但我找到的几乎所有内容都是针对C++的。任何帮助或资源?编辑:正如@Adriano在回答中所建议的那样,我正在尝试使用共享内存。但是由于我无法捕获的某种异常,启动程序正在被Windows终止。调用CopyMemory时发生。代码如下:#include"stdafx.h"#include"windows.h"#include"io

windows - 进程何时可以在 Windows 上更改其 PID?

有没有办法让进程在Windows上更改其PID?我发现了这个问题[1],但它仅针对Linux陈述了答案(“否”)。Windows呢?[1]ChangingtheProcessIdinlinux 最佳答案 不,您不能更改Windows进程的PID。 关于windows-进程何时可以在Windows上更改其PID?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10758393/