Rediger

Del via


HostProtectionAttribute.SelfAffectingThreading Property

Definition

Gets or sets a value indicating whether self-affecting threading is exposed.

public:
 property bool SelfAffectingThreading { bool get(); void set(bool value); };
public bool SelfAffectingThreading { get; set; }
member this.SelfAffectingThreading : bool with get, set
Public Property SelfAffectingThreading As Boolean

Property Value

true if self-affecting threading is exposed; otherwise, false. The default is false.

Examples

The following code example illustrates the use of the HostProtectionAttribute attribute with the SelfAffectingThreading property. This example is part of a larger example provided for the HostProtectionAttribute class.

// Use the enumeration flags to indicate that this method exposes shared state, 
// self-affecting process management, and self-affecting threading.
// This method allows the user to quit the sample.

[HostProtection(SharedState=true,SelfAffectingProcessMgmt=true,
SelfAffectingThreading=true,UI=true)]
static void ExecuteBreak()
{
   Console::WriteLine( "Executing Debugger.Break." );
   Debugger::Break();
   Debugger::Log( 1, "info", "test message" );
}
// Use the enumeration flags to indicate that this method exposes shared 
// state, self-affecting process management, and self-affecting threading.
[HostProtectionAttribute(SharedState=true, SelfAffectingProcessMgmt=true,
     SelfAffectingThreading=true, UI=true)]
// This method allows the user to quit the sample.
private static void ExecuteBreak()
{
    Console.WriteLine("Executing Debugger.Break.");
    Debugger.Break();
    Debugger.Log(1,"info","test message");
}
' Use the enumeration flags to indicate that this method exposes shared
' state, self-affecting process management, and self-affecting threading.
<HostProtectionAttribute(SharedState := True, _
    SelfAffectingProcessMgmt := True, _
    SelfAffectingThreading := True, UI := True)> _
Private Shared Sub ExecuteBreak()

    ' This method allows the user to quit the sample.
    Console.WriteLine("Executing Debugger.Break.")
    Debugger.Break()
    Debugger.Log(1, "info", "test message")
End Sub

Remarks

Self-affecting threading manipulates threads in a way that only affects user code.

Applies to

See also