201213_개찰구프로젝트_개찰구02

정재현·2020년 12월 13일
0

TIL

목록 보기
13/80

주말이라 오랜만에 늦잠을 자고 집안일을 하고 쉬다가
프로젝트 시간이 되어 작업을 시작했다.

어제에 이어서 개찰구를 설계하려고 했고,
어떤 Deque를 써야 좋을까 보다가
"ArrayBlockingQueue" 라는 녀석을 보고 '와.. 얘다' 싶었다.

멀티쓰레드로도 사용할 수 있고
http://www.tcpschool.com/java/java_thread_multi
.offer(일정시간)
을 통해서 일정시간 기다려주면서 공간이 생기면 추가해주는 좋은 기능을 가지고 있었다.

  1. 그래프에서 가져온 값에 맞게 개찰구에 사람들 뿌려주고
  2. 사람 들어갈때 offer 해주고 (사람없어질때까지 즉, 개찰구에 공간이 생길때까지 기다리는중)-> 지나갈때 remove해주고
  3. 현재 유동인구에 반영 (방금 지나갔으니 100-1)
  4. 다시 뒤에 서있는 대기중인 사람 넣어주는데,
    (여기서 Iterator 사용해서 돌면서 비어있는 개찰구 찾으면 될듯?)
    -> 아닌가? offer 사용하니 굳이 비어있는곳을 찾아야할까?

아.. 근데 아직 뭔가 명확하지가 않다.
대기 중인 '사람들의 움직임' 도 애매하다.
명확하게 정의를 내려서 설계하고 구현해야 한다고 생각중이다.

다음은

  • offer 와 iterator를 어떻게 사용할지
  • 사람들의 움직임은 어떻게 해야할지 생각해봐야겠다.
  • 멀티쓰레드를 예제로 경험해보기.

오늘의 코멘트: 주말이 좋긴좋다.

profile
"돈받고 일하면 프로다"

0개의 댓글