싱글 스레드 2

[JAVA] JAVA Thread(스레드) 사용법 & 예제

Thread란? 하나의 프로세스 내부에서 독립적으로 실행되는 하나의 작업 단위 운영체제에 의해 관리되는 하나의 작업(Task) Thread = Task(작업) JVM에 의해 하나의 프로세스가 발생하고 main() 안의 실행문들이 하나의 스레드 main() 이외의 또 다른 스레드를 만들려면 Thread 클래스를 상속하거나 Runnable 인터페이스 구현 멀티 스레드 작업 시, 각 스레드끼리 정보를 주고받을 수 있어 처리 과정의 오류를 줄일 수 있음 프로세스끼리는 정보 교환 불가능 멀티 스레드(Multi Thread)란? 여러 스레드를 동시에 실행시키는 응용프로그램을 작성하는 기법 장점 메모리 공유로 인한 시스템 자원 소모 줄어듬 동시 작업이 가능 단점 자원을 공유하기에 충돌 발생 가능성 존재 로직의 복잡도..

[OS] 멀티 스레드(Multi Thread) vs 멀티 프로세스(Multi Process)

멀티 스레딩 (Multi Threading) 보통 우리가 작성하는 코드를 실행하면 하나의 프로세스로 동작합니다. 또, 하나의 프로세스는 보통 하나의 스레드만 사용하여 동작합니다. 아래의 파이썬 코드를 통해 알아보도록 하겠습니다. HTML 삽입 미리보기할 수 없는 소스 실행 결과는 다음과 같습니다. process_id : 25939 thread_id : 4539137536 이렇게 하나의 프로세스에서 하나의 스레드만 사용하는 것을 "싱글 스레딩"이라고 합니다. 우리가 작성하는 대부분의 코드들은 이렇게 싱글 스레딩입니다. 반면, 하나의 프로세스에서 여러 개의 스레드를 사용할 수도 있습니다. HTML 삽입 미리보기할 수 없는 소스 실행 결과는 다음과 같습니다. # 같은 프로세스 process_id : 27180..

Computer Science/OS 2022.08.14
반응형