강의

멘토링

커뮤니티

Inflearn コミュニティ Q&A

brillk のプロフィール画像
brillk

投稿した質問数

[C#とUnityで作るMMORPGゲーム開発シリーズ] Part4: ゲームサーバー

Interlocked

AfterValue

作成

·

450

0

강의 맨 끝에 int afterValue라는건 데이터가 변경된 후의 데이터를 출력하는 거니까, 동시에 일어날수있는 쓰레드에 양쪽에 붙여야 서로 변경된 값을 출력할수있는 건가요?
C#unitynetwork

回答 2

1

Rookiss님의 프로필 이미지
Rookiss
インストラクター

Increment를 한 다음 값을 말하는거라,
단일 쓰레드에서도 여전히 유효합니다.
말 그대로 1 증가시킨 '그' 값을 말하는겁니다.

Interlocked.Increment(ref number);
 // 끼어들기 가능
int a = number;

이렇게 하면 중간에 끼어들 수 있으니 1 증가된 '시점'의 값이라는 보장이 없겠죠.

0

brillk님의 프로필 이미지
brillk
質問者

음 이렇게 이해하면 될까요

1. 단일 쓰레드에서도 increment한 다음의 값이 출력된다

2. 출력하는 중에도 끼어들기가 가능하니 '원하는 수' 만큼 수정될수 있다?

Rookiss님의 프로필 이미지
Rookiss
インストラクター

'원하는 수'라는게 무엇을 말씀하시는지 헷갈리네요.
말 그대로 Interlocked.Increment를 성공하는 딱 그 시점의 값을 알고 싶을 때,
그 결과를 Increment의 return 값으로 받아오면 됩니다.

brillk のプロフィール画像
brillk

投稿した質問数

質問する