Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading WCF和线程_Multithreading_Wcf - Fatal编程技术网

Multithreading WCF和线程

Multithreading WCF和线程,multithreading,wcf,Multithreading,Wcf,我有一个WCF服务,在一个模块中,我必须在每次保存记录时发送确认邮件。我计划使用异步线程来发送邮件,这样在发送邮件时服务性能不会受到影响 我的问题是,在WCF中使用线程是安全的还是可能会影响其性能?作为保存的一部分,您要发送多少封电子邮件?如果只是一个小数字(即:1),则不需要线程。从.net向本地SMTP服务器(将处理实际传递)发送邮件非常快。传递的实际“工作”由SMTP服务器处理,您不必担心 您可以这样做,它应该可以工作,但在这种情况下,我认为最简单的解决方案将为您提供最好的(并且以后最容易

我有一个WCF服务,在一个模块中,我必须在每次保存记录时发送确认邮件。我计划使用异步线程来发送邮件,这样在发送邮件时服务性能不会受到影响


我的问题是,在WCF中使用线程是安全的还是可能会影响其性能?

作为保存的一部分,您要发送多少封电子邮件?如果只是一个小数字(即:1),则不需要线程。从.net向本地SMTP服务器(将处理实际传递)发送邮件非常快。传递的实际“工作”由SMTP服务器处理,您不必担心


您可以这样做,它应该可以工作,但在这种情况下,我认为最简单的解决方案将为您提供最好的(并且以后最容易维护)结果。

谢谢Tridus,但是如果我在wcf中使用异步线程,它会影响性能吗?我问这个问题是因为邮件数量可能会更高,我不这么认为,但我也不确定这是否有帮助。如果请求本身在该线程完成之前返回,它很可能会被中止。如果你无论如何都要等待它,那么使用一个线程来完成它是不会有任何收获的。你得检查一下才能知道。