System.DirectoryServices.AccountManagement.GroupPrincipalスレッドセーフですか?
-
22-09-2019 - |
質問
私は一括でユーザーを作成するプログラムを書いています、私はこの私はそれがスレッドにするつもりだったし、すべてがAに座っている周りを取得するために、約5秒間ブロックで作成の一部である操作を持っていますスレッドプールます。
私の質問は、私は、原則として外にスレッドを作成し、スレッドとコールgroup.Members.Add(u)
とgroup.Save()
にグループ原理を渡す場合、私はトラブルに巻き込まれることができますか?それは、各スレッドの中から新しいグループプリンシパルを生成する方が良いでしょうか?
解決
MSDNするから
(Visual BasicではShared)すべてのパブリックstaticはこの型のメンバは、スレッドセーフです。インスタンスメンバーの場合は、スレッドセーフであるとは限りません。
それはほとんどのノートでは、マニュアルでは非常に一般的なものです。それはあなたが「スレッドセーフ」とどのように同時アクセスを制御することにより、何を意味するかを決定するためにあなたにプログラマ次第です。
他のヒント
2つのスレッドが同じコレクションインスタンスに作用いつでも、あなたは安全ではありません。 UIがブロックされないように、あなただけの単一のバックグラウンドスレッドを使用している場合は、バックグラウンドスレッドでグループを作成し、独占的にそこにそれを使用しています。あなたの計画が同時にActive Directoryを打つために、複数のスレッドを生成して、グループにユーザーを追加するスピードアップするためであれば、私はそれが助けにはなりません推測してます。
所属していません StackOverflow