VB.netにおける Static と シンクロナイズ メソッド

    <System.Runtime.CompilerServices.MethodImpl(Runtime.CompilerServices.MethodImplOptions.Synchronized)> _
    Public Shared Sub test(ByVal str As String)

    End Sub

    <System.Runtime.CompilerServices.MethodImpl(Runtime.CompilerServices.MethodImplOptions.Synchronized)> _
     Public Shared Sub tests(ByVal d As Integer)

    End Sub

SharedがStaticの宣言です

<System.Runtime.CompilerServices.MethodImpl(Runtime.CompilerServices.MethodImplOptions.Synchronized)>
をメソッドの先頭に付けるとシンクロナイズが実現できます。

Static にしたときはクラスレベルからのシンクロナイズになります

付けないときはObject レベルでのシンクロナイズになります。

一つのクラスの中に別名のシンクロナイズメソッドが在っても、それらも、シンクロナイズされ、
一つのメソッドしか実行できません。



▲トップページ > Visual BASIC と C#