HostProtectionAttribute.ExternalThreading Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets a value indicating whether external threading is exposed.
public:
property bool ExternalThreading { bool get(); void set(bool value); };
public bool ExternalThreading { get; set; }
member this.ExternalThreading : bool with get, set
Public Property ExternalThreading As Boolean
Property Value
true
if external threading is exposed; otherwise, false
. The default is false
.
Examples
The following code example illustrates the use of the HostProtectionAttribute attribute with the ExternalThreading property. This example is part of a larger example provided for the HostProtectionAttribute class.
// Use the enumeration flags to indicate that this method exposes synchronization
// and external threading.
[HostProtection(Synchronization=true,ExternalThreading=true)]
static void StartThread()
{
Thread^ t = gcnew Thread( gcnew ThreadStart( WatchFileEvents ) );
// Start the new thread. On a uniprocessor, the thread is not given
// any processor time until the main thread yields the processor.
t->Start();
// Give the new thread a chance to execute.
Thread::Sleep( 1000 );
}
// Use the enumeration flags to indicate that this method exposes
// synchronization and external threading.
[HostProtectionAttribute(Synchronization=true, ExternalThreading=true)]
private static void StartThread()
{
Thread t = new Thread(new ThreadStart(WatchFileEvents));
// Start the new thread. On a uniprocessor, the thread is not given
// any processor time until the main thread yields the processor.
t.Start();
// Give the new thread a chance to execute.
Thread.Sleep(1000);
}
' Use the enumeration flags to indicate that this method exposes
' synchronization and external threading.
<HostProtectionAttribute(Synchronization := True, _
ExternalThreading := True)> _
Private Shared Sub StartThread()
Dim t As New Thread(New ThreadStart(AddressOf WatchFileEvents))
' Start the new thread. On a uniprocessor, the thread is not given
' any processor time until the main thread yields the processor.
t.Start()
' Give the new thread a chance to execute.
Thread.Sleep(1000)
End Sub
Remarks
Code that exposes external threading creates or manipulates threads other than its own, which might be harmful to the host.