1

今天我一直在 web 应用程序中使用 wkhtmltopdf.exe,我想知道是否应该使用锁(或单例模式)以便以Process.Start线程安全的方式调用。

我担心的是多个用户会在调用上述 exe 文件的页面上同时执行 GET。据我了解,每个请求都是在自己的线程上创建的,这是否意味着调用 exe 文件(带有Process.Start)在 Web 应用程序中是线程安全的?

4

1 回答 1

2

Process.Start与线程安全无关。这是一个线程安全的调用——你可以从任意多的线程中调用任意多次。随之而来的问题是您依赖外部流程来完成这项工作。在密集使用的 Web 应用程序中生成多个进程并不是一个好主意,因为您将消耗越来越多的资源。因此,如果您的站点没有大负载,这可能会很好,但如果您希望开始扩展,则不建议这样做。

是的,我知道以可靠且高性能的方式将 HTML 转换为 PDF,不涉及生成过程并且对最终结果感到满意需要花钱。但是 Web 应用程序的可扩展性通常是有代价的。

于 2012-12-13T22:08:02.033 回答