다음을 통해 공유


SpinLock.TryEnter 메서드

정의

메서드 호출에서 예외가 발생하는 경우에도 안정적인 방식으로 잠금을 얻으려고 시도합니다. 잠금을 얻었는지 확인하기 위해 lockTaken을 안정적으로 검사할 수 있습니다.

오버로드

TryEnter(Boolean)

메서드 호출에서 예외가 발생하는 경우에도 안정적인 방식으로 잠금을 얻으려고 시도합니다. 잠금을 얻었는지 확인하기 위해 lockTaken을 안정적으로 검사할 수 있습니다.

TryEnter(Int32, Boolean)

메서드 호출에서 예외가 발생하는 경우에도 안정적인 방식으로 잠금을 얻으려고 시도합니다. 잠금을 얻었는지 확인하기 위해 lockTaken을 안정적으로 검사할 수 있습니다.

TryEnter(TimeSpan, Boolean)

메서드 호출에서 예외가 발생하는 경우에도 안정적인 방식으로 잠금을 얻으려고 시도합니다. 잠금을 얻었는지 확인하기 위해 lockTaken을 안정적으로 검사할 수 있습니다.

TryEnter(Boolean)

Source:
SpinLock.cs
Source:
SpinLock.cs
Source:
SpinLock.cs

메서드 호출에서 예외가 발생하는 경우에도 안정적인 방식으로 잠금을 얻으려고 시도합니다. 잠금을 얻었는지 확인하기 위해 lockTaken을 안정적으로 검사할 수 있습니다.

public:
 void TryEnter(bool % lockTaken);
public void TryEnter (ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)

매개 변수

lockTaken
Boolean

잠금을 얻었으면 true이고, 그렇지 않으면 false입니다. 이 메서드를 호출하기 전에 lockTaken을 false로 초기화해야 합니다.

예외

lockTaken 인수는 TryEnter를 호출하기 전에 false로 초기화해야 합니다.

스레드 소유권 추적 기능을 사용할 수 있으며 현재 스레드가 이미 이 잠금을 획득했습니다.

설명

달리 EnterTryEnter는 잠금을 사용할 수 있을 때까지 기다리는 것을 차단하지 않습니다. TryEnter가 호출될 때 잠금을 사용할 수 없는 경우 더 이상 회전하지 않고 즉시 반환됩니다.

추가 정보

적용 대상

TryEnter(Int32, Boolean)

Source:
SpinLock.cs
Source:
SpinLock.cs
Source:
SpinLock.cs

메서드 호출에서 예외가 발생하는 경우에도 안정적인 방식으로 잠금을 얻으려고 시도합니다. 잠금을 얻었는지 확인하기 위해 lockTaken을 안정적으로 검사할 수 있습니다.

public:
 void TryEnter(int millisecondsTimeout, bool % lockTaken);
public void TryEnter (int millisecondsTimeout, ref bool lockTaken);
member this.TryEnter : int * bool -> unit
Public Sub TryEnter (millisecondsTimeout As Integer, ByRef lockTaken As Boolean)

매개 변수

millisecondsTimeout
Int32

대기할 시간(밀리초)이거나, 무기한 대기할 경우 Infinite(-1)입니다.

lockTaken
Boolean

잠금을 얻었으면 true이고, 그렇지 않으면 false입니다. 이 메서드를 호출하기 전에 lockTaken을 false로 초기화해야 합니다.

예외

millisecondsTimeout이 시간 제한 없음을 나타내는 -1 이외의 음수인 경우

lockTaken 인수는 TryEnter를 호출하기 전에 false로 초기화해야 합니다.

스레드 소유권 추적 기능을 사용할 수 있으며 현재 스레드가 이미 이 잠금을 획득했습니다.

설명

와 달리 EnterTryEnter는 잠금을 사용할 수 있을 때까지 무기한 대기하는 것을 차단하지 않습니다. 잠금을 사용할 수 있거나 가 만료될 때까지 millisecondsTimeout 차단됩니다.

추가 정보

적용 대상

TryEnter(TimeSpan, Boolean)

Source:
SpinLock.cs
Source:
SpinLock.cs
Source:
SpinLock.cs

메서드 호출에서 예외가 발생하는 경우에도 안정적인 방식으로 잠금을 얻으려고 시도합니다. 잠금을 얻었는지 확인하기 위해 lockTaken을 안정적으로 검사할 수 있습니다.

public:
 void TryEnter(TimeSpan timeout, bool % lockTaken);
public void TryEnter (TimeSpan timeout, ref bool lockTaken);
member this.TryEnter : TimeSpan * bool -> unit
Public Sub TryEnter (timeout As TimeSpan, ByRef lockTaken As Boolean)

매개 변수

timeout
TimeSpan

대기할 시간(밀리초)을 나타내는 TimeSpan이거나, 무한 대기하도록 -1밀리초를 나타내는 TimeSpan입니다.

lockTaken
Boolean

잠금을 얻었으면 true이고, 그렇지 않으면 false입니다. 이 메서드를 호출하기 전에 lockTaken을 false로 초기화해야 합니다.

예외

timeout 는 -1밀리초 이외의 음수로, 제한 시간 제한이 Int32.MaxValue 밀리초보다 큽니다.

lockTaken 인수는 TryEnter를 호출하기 전에 false로 초기화해야 합니다.

스레드 소유권 추적 기능을 사용할 수 있으며 현재 스레드가 이미 이 잠금을 획득했습니다.

설명

와 달리 EnterTryEnter는 잠금을 사용할 수 있을 때까지 무기한 대기하는 것을 차단하지 않습니다. 잠금을 사용할 수 있거나 가 만료될 때까지 timeout 차단됩니다.

추가 정보

적용 대상