반응형

사실 거창 한 건 아니고 말 그대로 명령어를 입력했을 때를 기점으로 1초씩 증가하여 다시 명령어를 입력하면 지난 시간은 시간 / 분 / 초 단위로 환산해주어 반환해주도록 만들어보려 한다.

비동기 작업하는 건 처음이라 굉장히 버벅거리고 있는데 현재 구성한 로직은

전역 변수(global)로 stopWatchUserList라는 List와 sec라는 int형 변수들을 만들었다.

명령어가 입력되면 stopWatchUserList에 명령어를 입력한 사람이 들어있는지 확인하고 없다면 리스트에 추가해주면서 while문을 돌리면서 1초마다 sec를 1씩 증가시키도록 만들어주었다.

 

현재 문제는

1. 공부한 시간을 알려주는 sec라는 변수가 전역변수라서 모든 사람들끼리 통합되어 적용이 되는 것.

2. asyncio.sleep(1)을 while문 안에 사용하여 1초마다 지연되도록 적용을 시켜주었는데 여러 사람들이 명령어를 실행하다보면 1초 주기가 아니라 조금 더 짧아지는 경향이 있는 것 같다...

 

1번 문제는 유저리스트와 연관을 지어서 아예 유저와 관련시켜 sec변수를 별도로 구성하면 될 것 같고,

2번 문제는 비동기처리 부분에 대한 공부가 필요해보인다.

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기