1.
쓰레드- 운영체제가 처리하는 최소 단위
운영체제로부터 프로세스(작업 지시)를 받아서
쓰레드(노예)를 구한다
일을 지시할때 당연히 노예를 많이 쓸수록 좋다.
하지만 2개의 일을 지시할때 노예 한명에게 일을 동시에 2개 지시하면 어떻게될까? 문제가 발생할 것이다. 이게 바로 데이터 레이스다.
(사실 프로세스 자체가 쓰레드를 생산하기때문에 약간 틀린 비유긴한데 그냥 간단히 이해하기엔 좋음)
2. 제네릭
프로그래머가 일을 덜 하기 위해서 만든 프로그래밍
비슷한 틀을 가지고 있는데 타입변환같은 것마저 귀찮으니까 안하기 위해서 만든것
3. 컬렉션
데이터 저장을 위한 자료구조 집합
제너릭은 컴파일 타입에 타입 에러를 방지하기 위함