apartments相关内容

在 WinForms 线程上使用 CoInitializeEx

我正在为具有以下说明的 DSLR 相机开发 SDK: Windows 应用程序开发注意事项 创建应用程序时在 Windows 下运行的,每个都需要一个 COM 初始化线程,以便从主线程以外的线程访问相机线.创建用户线程并从中访问相机线程,请务必执行 CoInitializeEx( NULL,COINIT_APARTMENTTHREADED ) 在线程的开头和CoUnInitialize() ..
发布时间:2022-01-14 12:27:06 C#/.NET

你能解释一下STA和MTA吗?

您能用自己的话解释一下 STA 和 MTA 吗? 此外,什么是单元线程,它们是否仅与 COM 有关?如果是,为什么? 解决方案 COM 线程模型称为“单元"模型,其中初始化的 COM 对象的执行上下文与单个线程(单线程单元)或多线程(多线程单元).在此模型中,COM 对象一旦在单元中初始化,在其运行时期间就是该单元的一部分. STA 模型用于非线程安全的 COM 对象.这意味着 ..
发布时间:2021-12-02 13:26:34 C#/.NET

0x80010100:系统调用失败“异常,ContextSwitchDeadlock

长故事:在与COM inproc-server(dll)工作的C#应用​​程序中,我遇到“0x80010100:系统调用失败”异常,并且在调试模式下还会出现ContextSwitchDeadlock异常。 现在更详细的: 1)C#应用程序初始化STA,创建一个COM对象然后在订阅其连接点,并开始使用对象。 2)在某些阶段,COM对象生成很多事件,作为参数传递 3)C#侧的事 ..
发布时间:2016-12-18 20:56:26 C#/.NET

FreeThreadedDOMDocument,中立公寓和自由线程的封锁

如MSDN所示: 如果您正在编写一个单线程应用程序DOM),使用租赁线程模型(Msxml2.DOMDocument.3.0或Msxml2.DOMDocument.6.0)。如果您正在编写一个应用程序,其中多个线程访问将同时访问DOM,请使用免费线程模型(Msxml2.FreeThreadedDOMDocument.3.0或Msxml2.FreeThreadedDOMDocument.6.0) ..

C#在线程之间编组COM对象

我很困惑关于C#元素的COM对象之间的线程。为此,我有一个应用程序以任务并行方式加载一组文件。我正在使用 StaTaskScehduler 加载文件使用COM对象。一旦COM对象被加载,我将对象存储在一个中央列表中。 然后,我再次尝试对这些数据执行一些处理,再次使用STATaskScheduler。然而在这一点上我遇到了一个问题。我收到以下异常: 在MadCat.exe中发生类型为“S ..
发布时间:2016-12-18 19:11:35 C#/.NET

在WinForms的线程使用的CoInitializeEx

我工作的SDK的数码单反相机,它具有以下说明: 在开发Windows应用程序在创建应用程序的注意事项 Windows下的运行,一个COM初始化需要对每个 线程以便从一个线程比主其他访问照相机 线。要创建一个用户线程,并从该访问摄像头 线程,一定要执行的CoInitializeEx(NULL, COINIT_APARTMENTTHREADED)在螺纹的开始和 CoUnInitialize()结 ..
发布时间:2015-11-25 15:55:36 C#/.NET

单线程单元VS多线程公寓

可能重复: 你能解释一下STA和MTA? 所有的线程池线程都在 多线程的单元。 - 根据MSDN的 这是什么意思?我真的很关心VS单线程单元模型多之间的区别是什么。或者是什么的单元模型是什么意思?我已阅读就可以了MSDN,并且它并没有真正意义的我。我想可能有一个想法,但我想有人在这里可以用简单的英语解释。 谢谢, 安东尼ð 更新1 发现这个 你能解释一下STA和MTA? 任何人 ..
发布时间:2015-11-24 20:48:11 C#/.NET

你能解释一下STA和MTA?

您可以用自己的语言解释一下STA和MTA? 此外,什么是公寓线程和他们做只涉及到COM?如果是这样,为什么? 解决方案 COM线程模型被称为“公寓”模式,即初始化COM对象的执行上下文与任何单个线程(单线程公寓)相关或多线程(多线程公寓)。在该模型中,一个COM对象,一旦在公寓初始化,是公寓为它的持续时间的一部分的运行时间。 该STA模型用于非线程安全的COM对象。这意味着他们不处理自己的 ..
发布时间:2015-11-24 11:13:23 C#/.NET