问题标签 [mta]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1327 浏览

c++ - C++ 中带有 COM 的 QueueUserWorkItem

我有一个性能问题,客户端在我的 C++ 应用程序的 DOM 中创建数百个特定类型的对象“Foo”。每个 Foo 实例都有自己的异步工作队列和自己的线程。显然,这不成比例。

我需要在工作队列之间共享线程,我不想重新发明轮子。我需要支持XP,所以不能使用Vista/Win7线程池。处理每个队列项需要完成的工作包括在多线程 COM 单元中进行 COM 调用。XP 线程池的文档说可以在线程工作者函数回调中使用 MTA 单元调用 CoInitializeEx()。我编写了一个测试应用程序并验证它是否有效。我让应用程序在 WorkItem 回调函数中使用和不使用 CoInitializeEx/CoUninitialize 对运行了 100 万次迭代。CoInit* 调用需要 35 秒,没有调用需要 5 秒。这对我的应用程序来说开销太大了。由于线程池是每个进程的,并且第 3 方代码在我的进程中运行,我假设它不是

鉴于所有这些,有什么方法可以使用 Win32 线程池吗?是我遗漏了什么,还是 XP 线程池对于高性能 COM 应用程序毫无用处?我只需要创建自己的线程共享系统吗?

0 投票
1 回答
437 浏览

linux - 邮件被发送到本地域而不是远程域

我有一个托管 mywebsite.com 的服务器

如果我尝试将邮件发送到 info@mywebsite.com,则 MTA 正在尝试将其发送到本地主机(邮件在不同的服务器上进行管理)。我怎样才能解决这个问题?!

它是一个运行 qmail 的 linux 服务器

需要更多信息请询问

谢谢!

0 投票
5 回答
239 浏览

php - 程序员可以使用 PHP 发送电子邮件的所有方式是什么?

我正在寻找程序员可以用来发送电子邮件的内置 PHP 函数列表。

显而易见的答案是mail(),但我也在寻找可能用于手动打开与 MTA 的连接或在本地计算机上生成一个进程的函数列表,该进程可能反过来使用 sendmail、postfix 等发送电子邮件.

这里的上下文是我想扫描一个大型的未知代码库以查找发送电子邮件的代码(因为我们已经找到了对 的调用mail(),但没有这样做)

0 投票
2 回答
1464 浏览

c# - 来自外部进程的 C# 中的线程问题

我有这个简单的代码:

不幸的是,当运行此代码(来自第三方进程)时,线程并没有真正运行。在进程资源管理器和 VS 调试器中,我看到线程已创建并且其状态为“正在运行”。

主线程的单元是 STA,我在内部线程上尝试了 STA 和 MTA。

当我最后添加到Run()方法时,invokerThread.Join();线程确实运行。但话又说回来,它并没有真正帮助。

我错过了什么?

编辑:这是有关代码托管的更多信息-

Run()方法是通过 COM 互操作从一个也是托管可执行程序集的进程调用的(使用 COM 互操作的原因是因为系统中的所有其他组件都是本机的)。

该方法RunOnBackground()在跟踪之后包含更多代码,通常其执行持续 10 到 20 秒,包括启动另一个进程并等待其终止。此外,我在代码中还有一些其他区域,我将一些调试信息写入 Trace。在调试代码时,Run()照常运行,并且在invokerThread.Start();调用者线程的状态为“正在运行”之后(尽管RunOnBackground()方法内的断点不会停止)。

当我在方法invokerThread.Join()的末尾添加时,调试Run()器会RunOnBackground() Join().

0 投票
2 回答
4763 浏览

c# - 与 MTA 线程相比,STA 线程有哪些限制?

如果我们像这样创建一个线程 STA:Thread.SetApartmentState(STA);那么它就不能运行带有[MTAThread]属性标记的代码。

我们[STAThread]在 Windows 和控制台应用程序中见过,但我从未见过带有[MTAThread]属性的代码,也不知道哪些 .NET 库使用了这个属性。

我的问题是,与具有 MTA 单元状态的线程(自然 .NET 线程)相比,单元状态设置为 STA 的线程有哪些限制?

0 投票
1 回答
3682 浏览

visual-studio-2010 - MSTest 将单元线程设置为 MTA

我在需要将单元线程模型设置为 MTA 的项目上使用 Visual Studio 2010 中的 MSTest。

我在网上查看过,我发现并尝试过的项目似乎只适用于 Visual Studio 2008 和 2005,请参阅http://blogs.msdn.com/b/ploeh/archive/2007/10/21/runningmstestinanmta。 .aspx _

谢谢

0 投票
1 回答
779 浏览

c++-cli - STA、MTA 冲突警告 重要吗?

我最近开始为原生 c++ 库编写 C++/CLI 包装器。我现在收到这个编译警告

“警告 LNK4249:指令 '/CLRTHREADATTRIBUTE:STA' 与命令行冲突;被忽略”

我的 c++/cli 包装器是在链接器的命令行参数中为 MTA 设置的,但我不知道哪个文件或项目试图给出 STA 指令。

我做了足够多的阅读来担心 .NET 会强制库变为多线程。我读到这主要影响我的应用程序对 COM 的使用,但我不确定我的 DLL 是否或在何处使用 COM。我使用互操作服务来编组字符串数据,并使用“msclr\auto_gcroot.h”来指向非托管类中的托管类。在被包装的本机 c++ 库中,我包含以下标头:

有没有人有任何建议可以帮助我避免将来的痛苦经历,或者我不应该担心它?

0 投票
3 回答
15791 浏览

email - MTA 究竟是做什么的?

这个问题让我开始思考,我现在意识到我对 MTA 的内部结构一无所知。

MTA 究竟是做什么的?SMTP 协议之后的一切对我来说似乎都是黑魔法。假设我想编写一个仅用于发送电子邮件的简约 MTA(或MDA),我需要学习/做什么?

编辑:我实际上并不打算编写 MTA,我只是想了解它在内部是如何工作的。

0 投票
3 回答
3785 浏览

.net - ASPX 页面中的 Aspcompat

在我的 aspx 页面中,我调用了一个使用 STA 的 COM 组件。所以我使用 aspcompat=true 参数,但我想了解逻辑。它究竟是做什么的?据我所知,在 STA 中,假设它只被一个线程调用。所以我应该自己提供线程安全。

如果这是正确的,aspcompat 参数在哪里提供线程安全?在整个页面上,还是仅在我访问 STA 组件的地方?

0 投票
0 回答
177 浏览

email - 如何指定默认 MTA?

我正在尝试在 mybookworld 上的 crontab 中使用 MAILTO 功能(它是一个 nas)

我已经安装了一个相当陌生的(想想)MTA:esmtp

使用 mutt(基于控制台的电子邮件客户端)它可以完美运行。但是在 crontab 中没有任何反应(即使我使用的 crontab 文件与我的台式机上的后缀为 MTA 的 crontab 文件相同)。所以我想也许系统不知道 esmtp 是一个可以从 crontab 中使用的 MTA。

我如何告诉 crontab 使用什么 mta?

问候