2011-11-23 2 views
0

어리석은 질문 인 경우 죄송합니다. 예를 들어 Foo.StaticBar()가 두 개의 스레드에 의해 호출되면이 두 메서드의 범위에서 공유되는 것이 있습니까? 예를 들어, 메소드의 로컬 변수 등? 나는 클래스 변수와 속성이 공유된다는 것을 알고있다.정적 방법 : 범위 내에서 어떤 것을 공유합니까?

답변

3

아니요, 로컬 변수는 호출중인 정적 메서드의 로컬이므로 공유되지 않습니다.

공유되는 유일한 것은 정적 메서드 외부의 상태이지만 클래스 내에서는 정적 멤버 변수입니다.

1

로컬 변수는 메소드 호출마다 비공개이다. 메서드가 메서드 외부에서 선언 된 리소스 (정적 필드 등)를 사용하는 경우 해당 리소스는 두 호출에 대해 공유됩니다.

관련 문제