목록전체 글 (115)
Game Tech Blog
1. Enemy Spawn [동영상1. Enemy Spawn] 2.
Dead Lock 이란? - 교착상태 (Dead Lock)란, 프로세스간 자원을 점유하고, 또 다른 필요한 자원을 점유하기 위해 대기하는 과정에서 무한히 대기하여 프로세스 처리를 못하는 현상을 이야기한다. 교착 상태의 발생? - 시스템 자원, 공유 변수(또는 파일), 응용 프로그램 등을 사용할 때 발생한다. 자원 할당 그래프(하이퍼링크 예정) Dead Lock 의 4대 필요조건 1. 상호 배제 (Mutual Exclusion) 한 자원에 대한 여러 프로세스의 동시 접근 불가 2. 점유와 대기 (Hold And Wait) 자원을 가지고 있는 상태에서 다른 프로세스가 사용하고 있는 자원의 반납을 기다리는 것 3. 비선점 (Non Preemptive) 다른 프로세스의 자원을 강제로 가져올 수 없음 4. 환형 ..
우리가 쓰던 C++ 에서의 String 과 C#의 String과는 차이가 있다. - 주로 수정 같은 문제.. 오히려 String 과 StringBuilder 가 가깝다고 공부한 적이 있는데 이 부분은 공부해서 채워넣을 예정이다
- TCP, UDP = OSI 7 Layer 의 전송 계층에서 사용되는 프로토콜 (응표세전네데물..) - TCP ( Transmission Control Protocol ) -> 인터넷에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용되는 프로토콜 [TCP 특징] 1. 연결 지향 방식으로 패킷 교환 방식을 사용 2. 3-way handshaking 과정을 통해 연결, 4-way handshaking을 통해 해제 3. 흐름 제어, 혼잡 제어 4. 높은 신뢰성을 보장 5. UDP 보다 속도가 낮음 6. 전이중(Full-Duplex), 점대점 (point to Point) 방식 TCP는 연결 지향 방식으로 패킷을 전송하는 논리적 경로를 배정. 3-way handshaking과정은 목적지와 수신지를 확..
Virtual Table ( vtable ) ? 가상함수 테이블이란, 한 개 이상의 가상 함수 (Virtual Method)를 포함하는 클래스에 대해서 컴파일러가 생성하는 테이블. Key(식별자) , Value(함수의 주소) 로 구성되어 있다. 가상함수 포인터를 모아둔 배열이라고도 한다. 이 가상함수 테이블이 존재하는 클래스에 대해서는 vptr(가상함수 포인터) 가 클래스 내부에 생성된다. Code 다음과 같은 코드를 짜면 vtable의 어떻게 구성되는지 알아볼 수 있다. #include "stdafx.h" #include using namespace std; class Parent { public: virtual void MyFunc1() { cout
Binary Search Tree? 레드 블랙 트리를 배우기 전 알아야할 자료구조. 이진 검색 트리는 저장과 검색에 평균 O(LogN) , 최악 O(N) 의 비교적 불완전한 구조를 가진다. 이 불 완전성을 해결하기 위해 고안된 것이 균형잡힌 이진트리 이다. 균형잡힌 이진트리로 대표적인 것은 레드 블랙 트리, AVL 트리이다. 여기서는 레드 블랙 트리를 다룬다. 이 Tree 에서 중위 순회(왼쪽자식 -> 부모 -> 오른쪽자식)를 할 때, 다음과 같은 Key를 얻는다. 결과 : 20 -> 30 -> 40 -> 50 -> 60 -> 80 이를 다시 트리에 넣게 되면, 다음과 같은 최악의 구조가 나온다. 이 Depth 를 Balance 있게 잡아줄 트리라고 생각하면 된다. Red Black Tree ? 기본은 ..