草庐IT

ui-thread

全部标签

windows - 如何在 Windows 中获得线程句柄的访问权限 THREAD_QUERY_INFORMATION

我想使用GetExitCodeThread()。MSDN文档说,“句柄必须具有THREAD_QUERY_INFORMATION或THREAD_QUERY_LIMITED_INFORMATION访问权限。”我使用_beginthreadex()创建我的线程。当我调用这个API时,我应该如何设置THREAD_QUERY_INFORMATION标志?它应该是initFlag的一部分吗?文档没有说明必须如何准确设置此标志。 最佳答案 _beginthreadex返回的句柄已经足够访问线程以查询有限的信息。毕竟它有终止线程的权限,这远不止查询

c++ - #include<线程>,错误无法打开源文件 "thread"

我期待在Windows上用C++实现多线程,我找到了链接http://www.cplusplus.com/reference/thread/thread/作为对线程的解释,在给定的示例中他们提到了线程的标题命名,实际上我正在Microsoftvisualstudio2010中编写代码,它说错误无法打开源文件“thread”,请帮助我这是否有帮助,或者请向我推荐任何其他有帮助的网站,实际上我是高级C++的初学者,在此先感谢。 最佳答案 是C++11header,VisualStudio2010不实现C++11。尝试更新到VisualS

c# - 添加项目到集合的更新 UI 已更改

我正在使用ObservableCollection,稍后应该用来自COM端口的数据填充,这意味着它会更新很多。出于测试目的,我设置了设计时样本数据(工作正常)和运行时样本数据,但是在将项目添加到我的集合时我无法更新我的UI。我已经在我的类中成功实现了INotifyPropertyChanged,如下所示:publicclassSensorViewModel:INotifyPropertyChanged{publicSensorViewModel(){dataItems=newObservableCollection();dataItems.CollectionChanged+=data

c# - WPF:UI 元素未更新

我有一个BackgroundWorker,在该工作人员中,我正在从excel文件中读取数据。如果excel文件中有错误,worker会完成并显示另一个表单,用户可以在其中输入更正,然后按“确定”,然后从头开始再次运行worker。当工作人员成功完成时,它应该更新我的主窗口上的标签以表明它已加载excel。但标签不会更新。当我调试它时,我可以看到更新标签运行的代码,但它根本不起作用。请帮忙,这让我发疯!这是我的代码。privatevoidworker_ReadFileData(objectsender,DoWorkEventArgse){for(intj=1;j编辑:这是我打开的第二个窗

windows - 重叠 I/O : How to wake a thread on a completion port event or a normal event?

我想使用线程池来启动/取消重叠读取操作——分别使用ReadFile()和CancelIo()——以及处理任何读取操作完成时的完成端口事件。任何线程都可以发起读操作任何线程都可以处理读取完成事件只有发起读取的线程可以取消它(这是一个CancelIo()限制)我不确定如何实现它。通常调用GetQueuedCompletionStatus()来等待完成端口事件,调用WaitForSingleObject()来等待正常事件,但不清楚如何混合使用这两者。如果PostQueuedCompletionStatus()让我指定一个特定的线程来唤醒我就会被设置。有什么想法吗?更新:该解决方案必须在Win

wpf - 从多个后台线程更新 UI

这里的问题有点抽象。我们都知道,对于一个后台线程来更新一些UI元素。Dispatcher.Invoke()是唯一的选择(是吗?)。但是,Dispatcher.Invoke()本身将更新任务委托(delegate)给UI线程。考虑以下情况:后台线程经常更新UI。数十个线程更新同一个UI。Dispatcher对象会继续将更新任务委托(delegate)给UI线程,而UI线程可能会变慢。什么是可能的解决方案?我们如何在线程模型与WPF非常相似的Windows窗体中解决这样的问题?WPF是否提供任何其他线程技术?问候, 最佳答案 如果您通过

c++ - 启动我自己的简单 UI 工具包

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭7年前。Improvethisquestion我希望这个问题不要太主观。我想在C++中启动我自己的简单UI工具包,即一个可以通过呈现所有控件来跨多个平台创建UI的库(或多或少是QT基础知识的简化版本)。我这样做是为了学习,所以请不要发帖你不应该重新发明轮子,因为与主要的UI工具包竞争并不是我的目标。问题是:我应该在Windows和Linux上使用哪个API来创建我的工具包?我进行了一些研究,我想我应该在Windows上使用GDI+绘制

windows - C/C++ : duplicate main() loop in many threads

我有这个“有趣”的问题。我有这个遗留代码,看起来像intmain(){while(true){doSomething();}}我想在许多线程中复制doSomething(),这样现在main()看起来像intmain(){runManyThreads(threadEntry)}voidthreadEntry(){while(true){doSomething();}}问题是doSomething()访问许多全局变量和静态变量,我无法更改它的代码。是否有复制这些静态变量的技巧,因此每个线程都有自己的集合?(某种线程本地存储,但不影响doSomething())..我使用VisualC++

asp.net - 您如何在 ASP.NET 解决方案中调用物理上分离的 UI/BL 代码?

Chapter19:PhysicalTiersandDeploymentMSDN上描述了“分布式部署”(见图2)。一切都很好。根据我的经验,我们总是按照他们所描述的“非分布式部署”来部署基于Web的系统(图1)。我的理解是,在Microsoft世界中,作为独立事物的“应用程序服务器”并不真正存在(就像在Java世界中一样),因为它实际上已“嵌入”到操作系统/Windows中。所以我的问题是,如果您要将UI和业务逻辑(BL)分布到不同的服务器/层上,它们将如何通信?我知道一个答案是使用“服务层”——有哪些替代方案?你实际上会怎么做?从代码的角度来看它会是什么样子?

c# - 从 Windows 服务在 C# 中以编程方式启动进程,UI 不显示我在任务管理器中看到进程

我正在尝试从用C#编写的Windows服务以编程方式启动进程。我看到我的进程已在任务管理器中启动,但我没有看到它的UI。知道发生了什么事吗?我在WindowsXP上运行这个clientProcess=newSystem.Diagnostics.Process();clientProcess.StartInfo.FileName=system_drive_path+@"\sd\ud\ud.exe";clientProcess.StartInfo.WindowStyle=ProcessWindowStyle.Maximized;clientProcess.Start();