AmazonSimpleNotificationServiceClient 是线程安全的吗?
Is AmazonSimpleNotificationServiceClient thread-safe?
我正在 .NET 中开发一个 class 库,它使用 Amazon AWS SDK 通过 Amazon SNS 对通知进行排队,以及创建新的移动推送端点。您可以通过使用您创建的客户端对象发出请求来执行此操作:
var client = new AmazonSimpleNotificationServiceClient(...);
...
是您可以通过多种方式指定 AWS 凭证的地方。
我不想在每次排队通知或向亚马逊发送其他操作时都重新创建 client
对象,我只想创建 [=12= 的静态版本] 对象,并让我的每个方法都利用它。
我的 class 库中的这些方法可能在被多个线程调用的环境中运行,或者当我们在 ASP.NET 中使用它们时,可能会被多个 web 调用应用程序池中的连接一次。
AmazonSimpleNotificationServiceClient 及其方法是否被认为是线程安全的?有没有人发现我以这种方式使用静态对象的方式有问题?有没有更好的方法来做到这一点,同时保留每次与 SNS 交互时不必实例化新对象的效率? (最终我们希望使用其中一些方法发送大量推送通知。)
The best-known aspect of the AWS SDK for .NET are the various service clients that you can use to interact with AWS. Client objects are thread safe, disposable, and can be reused.
我正在 .NET 中开发一个 class 库,它使用 Amazon AWS SDK 通过 Amazon SNS 对通知进行排队,以及创建新的移动推送端点。您可以通过使用您创建的客户端对象发出请求来执行此操作:
var client = new AmazonSimpleNotificationServiceClient(...);
...
是您可以通过多种方式指定 AWS 凭证的地方。
我不想在每次排队通知或向亚马逊发送其他操作时都重新创建 client
对象,我只想创建 [=12= 的静态版本] 对象,并让我的每个方法都利用它。
我的 class 库中的这些方法可能在被多个线程调用的环境中运行,或者当我们在 ASP.NET 中使用它们时,可能会被多个 web 调用应用程序池中的连接一次。
AmazonSimpleNotificationServiceClient 及其方法是否被认为是线程安全的?有没有人发现我以这种方式使用静态对象的方式有问题?有没有更好的方法来做到这一点,同时保留每次与 SNS 交互时不必实例化新对象的效率? (最终我们希望使用其中一些方法发送大量推送通知。)
The best-known aspect of the AWS SDK for .NET are the various service clients that you can use to interact with AWS. Client objects are thread safe, disposable, and can be reused.