Skip to content

20210308

tmdgusya edited this page Mar 8, 2021 · 1 revision

회고

Roach

  • spring project 진행 중 -> 재밌음.
  • Database 공부 중...

Han

  • 이번 주 아이템이 살짝 어려웠다.
  • 이번에 회사에서 새로하는 프로젝트를 node 로 진행하고 있음 -> 노드가 가벼워서 재밌는거 같음.

David

  • 학교 시험일정때문에 바쁘게 지냈음
  • 아이템들이 이펙티브 자바에서 다루기 어려운 내용인것 같음. -> 동시성 부분은 파고들려면 다른 책을 보는게 조금 더 좋은거 같음.

Pyro

  • 지난 주 목요일 부터 코드리뷰어로 활동하기 시작함. -> 나름 할만한것 같음
  • 월~수 오랜만에 만난 친구랑 술먹음

Items

Item79

  • ConcurrentModificationException() 은, List 순회 중 element가 변경되면 발생되기도 함..

  • alien method란?

    • overridden, or one provided by a client in the form of a function object.
    • stack-overflow
  • 응답 불가, 안전 실패

    • liveness failure (응답 불가), dead lock 상황
    • safety failure (안전 실패), 데이터에 변경이 일어나서 정상적으로 동작하지 않았음.
  • ConcurrentCollection을 사용하자..?

  • 자바 언어의 락은 재진입(reentrant)을 허용하므로...

Item80

  • ExcutorService 의 용도에 관한 설명이 나와있는 챕터..

Item81

  • 동시성(Concurrency) vs 동기화(Synchronizaion)
    • 병렬실행이 핵심 vs 어떤 부분에 lock을 거는 것..
  • Concurrent Collection
  • Blocking Queue
  • CountdownLatch...?
    • countDown() 이 몇번 호출되는지를 인자로 받고, 해당 countDown 이 받아온 인자만큼 실행됬을때 await 되어있는 애를 깨운다? 주어진 인자 숫자가 0이 될때까지 스레드를 Blocking 상태로 만든다.
    • countDownLatch가 0이되는 순간이 문이 열리는 순간!
    • countDown 숫자가 내려가기만 한다.
  • Semaphore란...?
    • (countDown + countUp) Latch
  • Mutex..?
  • 참고링크

Item82

  • 아예 스레드 안전한 것을 사용하던지, 속도 우선해서 사용하던지..

Item83

  • 한 메서드가 volatile은 읽었을 때, 최종적인 값이 읽어야 한다. 선언 계약..
    • synchronize 하고는 다름. 락이 없으니..

Item84

  • 왜? 실행 가능한 평균적인 스레드 수는 프로세서 수보다 많게 만들지 않아야 하는가?
    • 하나의 프로세서는 한순간 하나의 스레드만 실행 가능
    • context switching

다음 스터디

  • 다음 스터디 관련해서 이번주 수요일까지 Issue 에 올려서 투표할 예정

다음 진행자

  • roach
Clone this wiki locally