google drive api for c#thread safe?

时间:2015-02-18 07:28:21

标签: c# google-drive-api thread-safety google-api-dotnet-client

我在多线程C#应用程序中使用google drive API。我想知道Google dot net client library它是否是线程安全的。

此外,我想知道更正确的事情:

每次创建一个singelton服务或新服务。

2 个答案:

答案 0 :(得分:1)

如果您询问Google .net client Library是否是线程安全的。我很确定它是。在文档中至少有一个地方注意到它是线程安全的。

Google APIs Client Library for .NET

  

UserCredential是一个使用访问令牌的线程安全帮助程序类   访问受保护的资源。访问令牌通常在之后到期   1小时,如果您尝试使用它,将会出现错误。

答案 1 :(得分:0)

不是。我已经尝试过编写一些代码,假设它是,并且我的代码有时会随意崩溃在" request.Execute()" s ...

我尝试使用互斥锁,因此一次只有一个线程使用单件服务:这减少了崩溃,但它并没有消除它们。

离开互斥锁,我将其更改为单个UserCredential,并为每个线程使用新服务,因此它没有崩溃。 (我不知道我是否需要互斥锁,但谷歌api调用对我的应用程序来说不是关键路径,我只需要从主线程中获取调用。)