이 페이지가 유용했습니까?
이 콘텐츠에 대한 여러분의 의견은 중요합니다. 의견을 알려주십시오.
추가 의견
1500자 남음
내보내기(0) 인쇄
모두 확장

Thread.VolatileRead 메서드 (Single)

필드 값을 읽습니다. 이 값은 프로세서 수나 프로세서 캐시의 상태에 관계 없이 컴퓨터의 특정 프로세서에서 마지막으로 쓴 값입니다.

네임스페이스: System.Threading
어셈블리: mscorlib(mscorlib.dll)

public static float VolatileRead (
	ref float address
)
public static float VolatileRead (
	/** @ref */ float address
)
JScript에서는 값 형식 인수를 참조로 전달할 수 없습니다.

매개 변수

address

읽을 필드입니다.

반환 값

프로세서에서 해당 필드에 쓴 마지막 값입니다.

VolatileReadVolatileWrite는 특수한 동기화의 경우에 사용됩니다. 일반적인 환경에서 C# lock 문, Visual Basic SyncLock 문 및 Monitor 클래스는 더 쉬운 문을 제공합니다.

다중 프로세서 시스템에서 VolatileRead는 임의의 프로세서가 메모리 위치에 쓰는 가장 최근 값을 가져옵니다. 이것에는 플러싱 프로세서 캐시가 필요합니다.

단일 프로세서 시스템의 경우에도 VolatileReadVolatileWrite를 사용하면 값을 프로세서 레지스터 등에 캐시하지 않고 메모리에 쓰거나 읽을 수 있습니다. 따라서 이들을 사용하여 다른 스레드나 하드웨어에 의해 업데이트될 수 있는 필드 액세스를 동기화할 수 있습니다.

이 메서드를 호출하면 단일 메모리 액세스만 영향을 받습니다. 유효한 동기화를 필드에 제공하려면 필드에 액세스할 때 항상 VolatileRead 또는 VolatileWrite를 사용해야 합니다.

Note참고

C#에서는 필드에서 volatile 수정자를 사용하면 해당 필드에 액세스하는 경우 VolatileRead 또는 VolatileWrite가 항상 사용됩니다.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

.NET Framework

2.0, 1.1에서 지원

커뮤니티 추가 항목

추가
표시:
© 2015 Microsoft