草庐IT

线程信息

全部标签

c++ - 如何在安装驱动程序之前用 C++ 获取 GPU 信息

我们有一款软件可以在多种不同的显卡上运行,包括ATI和NVIDIA。我需要能够在安装驱动程序之前确定显卡的设备ID或型号名称,以便我可以创建一个硬盘驱动器镜像,它可以使用我们支持的任何显卡启动,有它第一次启动时检测显卡,安装驱动程序然后重新启动。目标平台为WinXP。我尝试使用WMI,但它只能检索有关显示适配器的信息,其中不包括设备ID,并且在安装驱动程序之前,显示适配器将只有通用数据,例如“视频Controller(VGA)”名称等。EnumDisplayDevices在安装驱动程序之前无法检测到设备。这一定是可能的,因为当新硬件向导打开时它知道显卡的名称,但我就是找不到这样做的方法

windows - Chrome 任务管理器信息与 Chrome 进程的 Windows 任务管理器信息不一致的原因是什么?

我注意到googlechrome任务管理器显示的进程的内存使用情况与windows任务管理器中的chrome进程的内存使用情况不一致。例如,在下图中,Chrome任务管理器显示最大的内存消耗进程(Chrome将其称为页面)是“Plug-in:ShowkwaveFlash”,有70,600K。在Windows任务管理器中,最大的memeatingchrome进程显示有79,364K。还有另一个在77K范围内。为什么以及如何出现这种不一致。这与Windows任务管理器计算每个进程的内存使用情况所需的某种开销有关吗?或者它与chrome本身有关。另一个问题:Windows任务管理器中总是会列

c - 在 Windows 上安装定时器/时钟 ISR - 单线程环境中的异步调用

我正在改进一些代码,这些代码模拟了x86Windows系统上的上下文切换调度程序。该程序使用一些古老的BorlandC编译器在WindowsXP(编辑:可能不是Windows7)上编译,并且正在移植为MSVC可编译。有一次,代码通过dos.h中的这些不可用函数安装ISR:void(*)()getvect(int)voidsetvect(int,void(*)());具体来说,代码为(循环)定时器中断安装了一个ISR。这些电话是:tick_isr_old=getvect(0x08);setvect(0xF2,tick_isr_old);setvect(0x08,(voidinterrup

java - 是否可以在任务管理器 (Windows) 的“进程”选项卡中获取有关某个项目的信息

我想知道是否可以获取有关正在运行的进程的信息(如内存使用情况),这些信息通常可以在Windows任务管理器的“进程”选项卡中看到。如果是,有没有办法使用java来实现? 最佳答案 Windows有一个名为tasklist的命令,可以为您提供ImageNamePIDSessionNameSession#MemUsage您可以使用Runtime.getRuntime().exec("tasklist.exe")来读取该信息。像这样:Processprocess=Runtime.getRuntime().exec("tasklist.ex

c++ - 如何使用 C++ 在 Windows 中创建守护线程?

我正在尝试使用nativeAPI在C++中为Windows创建一个守护线程,但我似乎找不到任何对守护线程的引用。有没有人有与此相关的文档的链接,或者在Windows上是否有不同的术语?如何在C++中的Windows上创建守护线程? 最佳答案 在Windows中,当进程准备好退出时,您的主线程应该调用ExitProcess或从main()函数返回。如果有其他不应终止的线程正在运行,您有责任跟踪这一点,并且在这些线程完成之前不要退出主函数。实际上,这意味着所有线程都是“守护线程”。(原则上,没有线程是守护线程;如果您显式终止主线程,则该

c++ - MFC GUI 应用程序重写 - 线程、消息传递、文档/ View 等。需要建议

我正在重写一个有很多问题的MFC应用程序。主要问题是不稳定。它是一个GUI应用程序,通过USB与外部模块通信。因此,它通过使用计时器每n毫秒运行一次通信堆栈。然而,系统调用不允许在计时器回调中使用,因此程序不稳定,因此经常崩溃和挂起。所以我必须重写应用程序以在后台线程中运行通信堆栈。这里的另一个问题是数据没有完全与表示分离,如果我使用另一个线程,我必须确保我保护共享资源。所以,主要是通信栈会通知应用程序有新的数据。这应该由工作线程处理。它运行通信堆栈,处理新消息,然后在更新数据结构时锁定数据结构,然后回复模块。然后它向主线程发送一strip有PostMessage的消息以更新GUI。但

windows - 线程命令在 WInDbg 中不起作用

尝试在WinDbg中执行基于线程的命令。安装程序是具有XP的VMWare,主机是Win7。基于this,试图调试应用程序挂起。但是无法从中获取任何信息。对于简单的tilda(~)它给出了语法错误。我需要做一些不同的设置才能执行这些命令吗?无论如何,这些“特殊”吗?因为我可以使用其他命令。基本上我希望WinDbg让我监控线程的状态?例如等待响应、发送请求或类似的事情。 最佳答案 ~仅为用户模式调试更改线程上下文。对于krnelmkode调试,请参阅帮助:。线。过程!线!过程 关于windo

windows - 我可以让VLC或其他媒体播放器实时输出信息到外部程序吗?

我的场景是这样的:我想在某些媒体播放器上播放电视节目或电影。我希望能够运行一个可以从该播放器获取实时信息的自定义程序-例如,当前时间戳、剩余视频的百分比等。我的目标是通过运行这个程序,我可以注释我的视频观看体验。也许按一下按钮就可以截屏,或者将时间戳标记为笑话的开始或类似的东西。媒体播放器在播放视频时是否可以查询此信息?我认为VLC是这里的最佳选择。 最佳答案 您可以通过VLCHTTPAPI与VLC对话:http://wiki.videolan.org/VLC_HTTP_requests特别是/requests/status.xml

windows - 线程数和处理器核心数有什么关系?

我正在编写一个基于线程池(IOCP)的服务器应用程序。但是不知道多少线程合适。线程数与处理器核心数有关吗? 最佳答案 如果您的工作项从不阻塞,请使用threads=cores。如果您的线程永远不需要取消调度,您可以通过为每个核心创建一个线程来最大化所有核心。如果您的工作项有时会阻塞(如果您想充分利用IOCP,它们不应该做太多),您需要更多线程。您需要测量多少。 关于windows-线程数和处理器核心数有什么关系?,我们在StackOverflow上找到一个类似的问题:

java - 使用 Jpcap 的线程 "main"java.lang.UnsatisfiedLinkError 中的异常

我在我的java程序中使用jpcap。我尝试了一切让它运行,但没有任何效果。给出异常::Exceptioninthread"main"java.lang.UnsatisfiedLinkErrorC:\ProgramFiles\Java\jdk1.7.0\bin\Jpcap.dll:Can'tfinddependentlibraries我正在使用netbeans7、JDK7、Windows7所有32位 最佳答案 如果您完全确定您的操作系统、Java和DLL都是32位的,那么您可能缺少libpcap库的Windows实现。请尝试以下步骤