컴퓨터 구조 원리 및 운영 체제 지식이 필요합니다.
한국인
일본어
패밀리 레스토랑

인테리어를 하다
직원을 고용해야합니다
한 패밀리 레스토랑에 한 명은 한국인, 한 명은 일본인 두 사람을 고용했다고 가정해 봅시다.

직원들에게 영혼이 주입되어 영혼이 있는 직원만 움직일 수 있다고 가정해 봅시다.
영혼의 주입에 홀린 순간 부엌일을 도맡아 하면서 구경만 할 수 있는 상황에 놓였다.
하지만 그렇게 되면 다른 식당들은 움직일 수 없다. 한인 요식업 종사자의 영혼을 빼내어 일식 요식업 종사자를 소유하여 일식 요식업 종사자를 움직이게 합니다.

짧은 시간에 이 작업을 앞뒤로 수행하면 한 영혼이 한 번에 네 명의 직원을 움직이는 것과 같은 착각을 일으킬 수 있습니다.
엄밀히 말하면 주어진 시간에 두 사람이 동시에 움직일 수는 없지만 얼핏 보면 동시에 움직이는 것처럼 보인다.
그래서 식당이 굴러갑니다. 영혼이 있었지만 앞뒤로 움직였습니다.
그러나 이 상황을 다음과 비교해보자.
식당 : 소송 절차(프로그램)
직원 : 실
영혼 : CPU 코어
여러 프로그램을 실행할 수 있습니다.
색상, 메모장, 서버
여러 식당을 운영하는 것과 같습니다.
프로그램이 메모리에 로드되었다고 해서 프로그램이 실행되는 것은 아니며 테마가 있어야 합니다. 그림판, 메모장 및 MMO 서버의 논리를 실행하려면 스레드를 제공해야 합니다.
쓰레드를 검색해보면 애니메이트 스피릿이라는 단어가 많이 나옵니다.
실제로 프로그램을 구동하는 영혼과 비유하기 위해. 결국 영혼처럼 프로그램을 움직이고 실행시키는 역할을 한다.
프로그램을 실행하는 엔터티 CPU책임질 것이다
영혼은 CPU의 핵심입니다. 요즘은 멀티코어지만 예전에는 CPU당 하나의 코어로 생각했습니다.
코어는 뇌에 해당하며 내부에는 덧셈과 뺄셈과 같은 계산을 수행하는 ALU라는 회로가 있습니다.
그가 Paint를 소유하고 실행하면 실행됩니다.
짧게 실행되고 다른 프로그램으로 전환되며 앞뒤로 반복됩니다.
언뜻 보면 그림판, 메모장, 서버가 동시에 실행되는 것처럼 보이지만
실제로 단일 코어는 하나의 프로그램만 실행합니다.
프로그램 내에서도 서버는 두 개의 스레드를 제공했습니다. 왜 다른 아이들은 1인데 이 아이는 2인가요?
그림판과 메모장은 단순한 프로그램이지만 서버는 할 일이 많습니다.

하나의 쓰레드로 하기엔 너무 많아서 여러 쓰레드를 넣었습니다.

그러나 여러 개를 배열한다고 해서 항상 성능이 향상되는 것은 아닙니다.
코어가 하나인 멀티스레딩은 큰 의미가 없습니다.
같은 직원이라도 약간 다른 의미를 가질 수 있습니다. Paint가 사소하고 서버가 중요하다고 가정하면 특정 스레드의 우선 순위를 지정하여 더 많은 실행 시간을 얻을 수 있습니다.
이것은 기본 운영 체제 이론에서 다루는 주제입니다.
시간을 공평하게 배분해야 하는지 아닌지에 대한 경우가 많습니다.
앞뒤로 실행하는 것은 궁극적으로 프로그램 작동 방식의 원칙입니다.
직원이 여러 명 있어도 동시에 이동할 수 없습니다. 따라서 현실적으로 멀티코어를 사용하십시오. 여러 개의 코어가 CPU에 내장된 상황입니다. 실제로는 여러 개의 코어가 있으므로 하나의 코어는 스레드를 전용으로 표시하고 실제로 동시에 실행 중인 경우 프로그램이 정상적으로 실행됩니다.물론 이런 상황도 좋지만 쓰레드 수가 늘어나면 코어가 이 쓰레드에서 이 쓰레드로 몰면서 실행된다.
운영 체제에서 Ctrl+Alt+Del을 누르고 작업 관리자를 보면 많은 프로그램이 실행되고 있는 것을 볼 수 있습니다. 운영 체제가 실제로 실행되는 커널 모드는 CPU가 수행해야 하는 작업을 변경하지 않습니다. 운영 체제는 생각보다 복잡합니다.

꼭 필요한 것만 켜놓는 것이 이상적인 상황이라 CPU 코어 수와 쓰레드 수가 같으니 전용 표시가 이상적인 상황이다.
다중 스레드를 설정하는 이유작업 분배를 통한 동시 실행을 위한 것입니다.
서버에는 게임 로직, 클라이언트에서 보낸 패킷 처리 및 데이터베이스 저장과 같은 많은 작업이 있습니다. 모든 사람에게 배포그래서 동시에 여러 번 실행 최종 목표
여러 메모장과 같은 동일한 프로그램에 대해 여러 키를 누르는 것과 하나의 프로그램에 여러 스레드를 배치하는 것의 차이점은 무엇입니까? 차이점있을 것이다

멀티스레딩의 장점이 있지만 힙과 데이터 영역이 모두 사라진다. 주제 공유할수있다. 데이터를 두 번 관리할 필요가 없습니다. 동시에 참조 가능. 하지만 이것 때문에 문제예를 들어 한 쓰레드가 어떤 데이터를 건드리면 다른 쓰레드가 그것을 읽으려고 하면 여러 문제를 풀지 않으면 활용할 수 없다.

멀티스레딩이란 스레드가 병렬로 잘 작동하도록 잘 배치하는 것을 의미하지만 공유 데이터를 동시에 접근할 수 있도록 관리하는 데에도 문제가 있다.
결국 식당을 잘 운영해야 하는데 생각대로 일이 풀리지 않는 경우가 많다.
지금부터 스레드 만들기시도 동기화 기술그것들을 알게 되면 이러한 부분들에 대해 더 깊이 이해할 수 있을 것입니다.
