추계 할인
CodeGym University
학습
강좌
과제
설문조사 및 퀴즈
게임
도움말
학습 재촉 스케줄
커뮤니티
사용자
포럼
채팅
기사
성공 사례
활동
리뷰
구독
옅은 색 테마
레슨
리뷰
회사 소개
시작
학습 시작
지금 학습을 시작하십시오
탐구 맵
레슨
모든 탐구
모든 레벨
newFixedThreadPool 메서드
모듈 2: 자바 코어
레벨 14,
레슨 2
Executors 클래스 의 newFixedThreadPool 메서드 는 고정된 수의 스레드로 executorService를 생성합니다 . newSingleThreadExecutor 메서드 와 달리 풀에서 원하는 스레드 수를 지정합니다. 내부적으로는 다음 코드가 호출됩니다. new ThreadPoolExecutor(nThreads, nThreads,
newCachedThreadPool 메서드
모듈 2: 자바 코어
레벨 14,
레슨 3
다른 유형의 스레드 풀은 "캐시"입니다. 이러한 스레드 풀은 고정 스레드 풀만큼 일반적으로 사용됩니다. 이름에서 알 수 있듯이 이러한 종류의 스레드 풀은 스레드를 캐시합니다. 사용하지 않는 스레드를 제한된 시간 동안 활성 상태로 유지하여 해당 스레드를 재사용하여 새 작업을 수행합니다. 이러한 스레드 풀은 합리적인 양의 가벼운 작업이 있을 때 가장 적합합니다. "합리적인 금액"의 의미는 다소 광범위하지만 이러한 풀이 모든 작업
newWorkStealingPool 메서드
모듈 2: 자바 코어
레벨 14,
레슨 4
우리를 위해 ExecutorService를 준비하는 newWorkStealingPool 메서드를 알아봅시다 . 이 스레드 풀은 특별합니다. 그것의 행동은 "도둑질" 작업의 아이디어를 기반으로 합니다. 작업은 대기하고 프로세서 간에 분산됩니다. 그러나 프로세서가 사용 중이면 다른 무료 프로세서가 작업을 훔쳐 실행할 수 있습니다. 이 형식은 다중 스레드 응용 프로그램에서 충돌을 줄이기 위해 Java에서 도입되었습니다. 포크/조인
newScheduledThreadPool 메서드
모듈 2: 자바 코어
레벨 14,
레슨 5
다른 유형의 작업 풀은 예약된 작업 풀입니다. 이름으로 판단하면 이 유형을 사용하여 특정 작업을 시작해야 하는 시기를 예약한다고 가정할 수 있습니다. 이 유형의 서비스는 일정 시간이 경과한 후 활동을 시작하는 작업이 있거나 반복 작업을 예약하려는 경우에 유용합니다. 하나를 사용하려면 Executors.newScheduledThreadPool(1) 을 호출합니다 . 나중에 매개 변수에 대해 이야기하겠습니다. 그러나 지금 우리가
ThreadLocal, ThreadLocalRandom
모듈 2: 자바 코어
레벨 14,
레슨 6
이 단원에서는 java.lang.ThreadLocal<> 클래스 작업과 다중 스레드 환경에서 이를 사용하는 방법 에 대해 일반적으로 설명합니다 . ThreadLocal 클래스는 변수를 저장하는 데 사용됩니다. 이 클래스의 특징은 이를 사용하는 각 스레드에 대한 값의 별도의 독립적인 복사본을 유지한다는 것입니다. 클래스의 작동을 더 깊이 파고들면 스레드를 값에 매핑하는 맵을 상상할 수 있습니다. 현재 스레드는 이를 사용해야 할
교수의 유용한 링크 — 27
모듈 2: 자바 코어
레벨 14,
레슨 7
"안녕하세요 아미고! 저녁에 거창한 계획을 세우지 마시길 바랍니다. 멀티스레딩에 대한 합리적인 자료를 찾았으니 즐거운 시간 되시기 바랍니다. 더 나은 조합: Java와 Thread 클래스. 파트 I — 실행 스레드 . 멀티스레딩은 처음부터 Java에 내장되어 있었습니다. 먼저 스레드의 출처와 구성 방식을 기억해 봅시다. 파트 2 — 동기화 . 이 문서는 스레드 간 동기화의 기본 방법에 대해 설명합니다. 모니터, 잠금 및 동기화
중첩 클래스
모듈 2: 자바 코어
레벨 15,
레슨 0
"안녕, 아미고!" "안녕, 엘리!" "오늘은 매우 흥미로운 주제가 있습니다. 오늘은 중첩 클래스에 대해 말씀드리겠습니다." "클래스가 다른 클래스 내에서 선언되면 중첩 클래스입니다. 비정적 중첩 클래스를 내부 클래스라고 합니다." "내부 클래스의 개체는 외부 클래스의 개체 안에 중첩되므로 외부 클래스의 변수에 액세스할 수 있습니다." 예 public class Car
정적 중첩 클래스
모듈 2: 자바 코어
레벨 15,
레슨 1
"그래서 두 번째 주제는 정적 중첩 클래스입니다. 비정적 중첩 클래스는 내부 클래스 라고 합니다 . "내포된 클래스 선언의 맥락에서 정적이라는 단어가 무엇을 의미하는지 머리를 감싸봅시다. 어떻게 생각하세요?" "변수가 정적으로 선언되면 변수의 복사본이 하나만 존재합니다. 따라서 중첩 클래스가 정적이면 해당 클래스의 개체를 하나만 만들 수 있다는 의미입니까?" " 정적이라는 단어에 혼동하지 마십시오 . 변수가 정적으로 선언되면
익명 내부 클래스 및 예제
모듈 2: 자바 코어
레벨 15,
레슨 2
"안녕, 아미고!" "하지만 우린 이미 인사했지, 엘리!" "이봐, 이모랑 말다툼하지 마. 31세기에는 누군가를 30분 이상 만나지 않으면 다시 인사하는 것이 관습이야. 그러니 나에게 태도를 주지 마!" "어쨌든, 또 다른 흥미로운 주제인 로봇 재생산을 할 시간입니다!" "O_O." "농담입니다. 새로운 주제는 익명의 내부 클래스 입니다 ." "Java에서는 때때로 여러 클래스를 상속하기 위해 클래스가 필요한 상황이 있습니다.
JDK의 다양한 클래스 예시
모듈 2: 자바 코어
레벨 15,
레슨 3
내부 클래스의 예 AbstractList 클래스 에는 Itr 내부 클래스가 있습니다 . 컬렉션의 요소를 하나씩 가져올 수 있는 Iterator 인터페이스 의 구현입니다 . private class Itr implements Iterator {
교수의 유용한 링크 — 23
모듈 2: 자바 코어
레벨 15,
레슨 4
"안녕하세요, 아미고! 당신은 새로운 주제와 작업에 매우 빠르게 대처했습니다. 하지만 오늘 당신을 위한 좋은 읽을거리가 많이 있습니다. 중첩 클래스를 다시 한 번 제대로 검토하면 도움이 될 것 같습니다. 중첩된 내부 클래스 다른 클래스 안에 클래스를 만드는 이유는 무엇입니까? 예를 들어, 프로그램의 논리를 유지하기 위해 다른 엔티티와 불가분하게 연결된 일부 엔티티를 분리할 수 있습니다. 어려운? 두려워할 것이 없습니다. 이 기
직렬화. 시작.
모듈 2: 자바 코어
레벨 16,
레슨 0
"오늘 우리가 객체를 파일에 저장하고 파일에서 읽는 것을 조사한 것을 기억할 것입니까?" "예, 방금 입력 스트림에서 읽은 출력 스트림에 저장했습니다." "잘 했어, 아미고. 이런 세부 사항을 알아차리다니 기쁘군. 파일에 저장하고 파일에서 읽을 수 있도록 코드를 완성할 수 있니?" "무엇을 완료하시겠습니까? FileInputStream 및 FileOutputStream을 선언하고 저장 및 로드 메서드에 전달합니다. 여기에 대해
더 보기
1
...
19
20
21
22
23
...
35
Please enable JavaScript to continue using this application.