Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • 비동기 : 다른 녀석에게 일을 넘기고 내일을 한다. ( 논블럭킹)
  • 동기 : 다른 녀석이 일을 마칠때까지 기다린다. ( 블럭킹 )
  • 능동적 : 나만의 큐와 스케쥴러를 가지고 있음


용어중 패턴에대한 설명이 가장 어려워서 따로 정리하였습니다.

패턴의 탄생이유로 알아보는 패턴에대한 이해


OOP와 비교해본 Actor Model


OOP

Code Block
languagec#
title일반적 OOP에서 스레드 세이프한 객체 작성법
linenumberstrue
    public class DeepThought
    {
        private int state;

        public int State
        {
            get
            {
                lock (this)
                {
                    Thread.Sleep(3000); //나의 상태에대한 깊은 생각에 빠짐..나는누군가? 여긴어딘가?
                    return state;
                }                
            }

            set
            {
                lock (this)
                {
                    //깊은 생각에 빠질땐 누구도 건들지 말기를 바람,그대가 최고우선순위 스레드라할지라도
                    state = value;
                }                
            }
        }        
    }
var dt = new DeepThought()

Thread.new { console.log( dt.State ) }
Thread.new { dt.State=1 }

...