구문 분석 스레드 풀의 ThreadPoolExecutor입니다 소스

1. 변수

, ThreadPoolExecutor에 먼저 이러한 상수를 정의하고, 언뜻 봐 무지 힘은, 사실은 스레드 풀의 상태를 나타내는 이진 높은 세 int이며

비트 컴퓨팅에서 첫번째보기 :

  1. << '왼쪽 : 우측 위치를 좌우 두 곱한 값에 대응하는 0을 비웠다.
  2. '>>'는 오른쪽 : 그 다음이 음수이면, OS X S.1에 사용되는 컴퓨터 시스템에 따라 0 또는 1을 채우는 제로 가득 긍정적 인 경우, 왼쪽 위치를 비웠다. 이는 2로 나눈 값에 상당한다.
  3. 부정적인 이진의 절대 값으로 1을 가산 한 후에 부정
    AtomicInteger 최종 CTL = 새로운 새로운 AtomicInteger (ctlOf (주행, 0))의 개인, 
    개인 정적 INT COUNT_BITS 최종 Integer.SIZE = - 3;. 29 // 
    개인 CAPACITY 정적 INT = 최종 (COUNT_BITS << 1이다.) - 1;.. // 1 < <29 = 00000000 00000000 0,010,000,000,000,000 영하 1 = 0,001,111,111,111,111 1,111,111,111,111,111 
   이진 1 // 001, 110 무효화된다 (111)에 1을 더한 후 이진 -1 29 좌측 
    주행 INT 개인 정적 = 파이널 << COUNT_BITS -1; // 111 00000 00000000 00000000 00000000 
    ; 개인 최종 정적 INT = 0 << 종료 COUNT_BITS // 000 00000 00000000 00000000 00000000 
    = 개인 최종 정적 INT 1 <<을 정지 COUNT_BITS 단계;. // 001 00000 00000000 00000000 00000000
    개인 정적 최종 INT의 정리 = 2 << COUNT_BITS; // 010 00000 00000000 00000000 00000000 
    개인 정적 최종 INT TERMINATED = 3 << COUNT_BITS; // 011 00000 00000000 00000000 00000000

  

추천

출처www.cnblogs.com/akaneblog/p/11462549.html