Skip to content

signal handling 부분 질문 #10

@simple4logic

Description

@simple4logic

안녕하세요, TODO 가 달려있지 않은 부분이지만 handling 부분에서 의문이 들어 질문드립니다.

image

  1. ctrl+c 를 단 한번만 눌렀을 경우에는 sighandler2가 호출되지 않을텐데, listenfd를 close하고 mutex를 destroy하는 부분이 handler1이 아니라 2에만 있는 이유가 있을까요? 통계를 확인하지 않고 종료하면 listendf나 mutex가 적절히 close/destroy되지 않고 종료되는게 아닌가 궁금합니다.

  2. sigint를 받은 즉시, 종료 문구를 출력하고 keep_running =0를 해주는데, 0 할당 직후부터 kitchen thread 30개가 연이어 return을 해줍니다. 이 도중에는 두번째 sigint 신호를 받지 못하던데, printf 직후 와 0 할당 사이 적절한 딜레이가 추가되어야 하는게 아닐지 여쭤보고 싶습니다.

감사합니다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    solvedQuestion solved

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions