[JSP] 동기 작업과 비동기 작업 + 핸들러개발자가 되기까지 (2023.08.16~2024.04.15)/[SC] Java2023. 12. 10. 18:06
Table of Contents
동기 작업 (Synchronous)
동기 작업은 순차적으로 실행되며, 한 작업이 시작되면 이 작업이 완료될 때까지 다음 작업이 대기한다.
즉, 작업이 진행 중일 때는 다른 작업이 기다려야 한다.
동기 작업은 코드가 순서대로 실행되기 때문에 결과를 예측하기 쉽고, 코드 구조가 간단할 수 있다.
그러나 한 작업이 끝날 때까지 다른 작업을 수행하지 않기 때문에
시스템 자원을 효율적으로 사용하지 못할 수 있다.
비동기 작업 (Asynchronous)
비동기 작업은 작업이 순차적으로 진행되지 않고, 동시에 여러 작업이 진행된다.
즉, 한 작업이 시작되면 다른 작업이 기다리지 않고 실행된다.
작업이 완료되면 결과를 처리하기 위해 콜백 함수나 이벤트 핸들러 등이 사용된다.
비동기 작업은 대표적으로 네트워크 요청, 파일 읽기/쓰기, 타이머 이벤트 등에서 사용된다.
비동기 작업을 사용하면 여러 작업을 동시에 처리할 수 있으므로 시스템 자원을 효율적으로 활용할 수 있다.
핸들러 (Handler)
핸들러(Handler)는 컴퓨터 프로그래밍에서 여러 목적으로 사용되는 용어이다.
일반적으로 어떤 이벤트나 요청을 처리하고 그에 따른 동작을 수행하는 코드 블록이나 함수를 가리킨다.
핸들러(Handler)를 만드는 이유는 다음과 같다.
- 이벤트 처리:
- 그래픽 사용자 인터페이스(GUI)나 웹 애플리케이션에서 발생하는 이벤트(버튼 클릭, 마우스 이동,
키보드 입력 등)를 처리하기 위해 핸들러(Handler)를 사용한다. - 예를 들어, 버튼 클릭 이벤트에 대한 핸들러(Handler)는 클릭이벤트가 발생했을 때
특정 동작을 수행하도록 정의된다.
- 그래픽 사용자 인터페이스(GUI)나 웹 애플리케이션에서 발생하는 이벤트(버튼 클릭, 마우스 이동,
- 예외 처리:
- 프로그램이 예외나 오류 상황에 직면했을 때 이를 처리하기 위해 핸들러(Handler)를 사용한다.
- 예외 핸들러는 예외가 발생했을 때 특정 동작이나 오류 메시지를 처리하거나 기록할 수 있다.
- 통신 이벤트 처리:
- 네트워크 프로그래밍에서는 소켓 통신이나 웹 요청과 같은 통신 이벤트를 처리하기 위해
핸들러(Handler)를 사용한다. - 클라이언트나 서버 측에서 발생하는 특정 이벤트에 대응하는 핸들러(Handler)를 만들어 통신을 관리할 수 있다.
- 네트워크 프로그래밍에서는 소켓 통신이나 웹 요청과 같은 통신 이벤트를 처리하기 위해
- 자원 관리:
- 파일 핸들링, 데이터베이스 연결과 같은 자원을 관리할 때,
해당 자원을 올바르게 해제하거나 정리하기 위해 핸들러(Handler)를 사용한다. - 메모리 누수를 방지하고 프로그램의 안정성을 유지하는 데 도움이 된다.
- 파일 핸들링, 데이터베이스 연결과 같은 자원을 관리할 때,
- 비동기 작업 처리:
- 비동기적인 작업이나 이벤트를 처리하기 위해서 핸들러(Handler)가 사용된다.
비동기 작업이 완료되었을 때 실행되는 콜백 함수는 종종 핸들러(Handler) 역할을 한다.
- 비동기적인 작업이나 이벤트를 처리하기 위해서 핸들러(Handler)가 사용된다.
- 사용자 정의 이벤트 처리:
- 일부 프로그래밍 환경에서는 특정 사용자 정의 이벤트에 대한 처리를 위해 핸들러(Handler) 를 만든다.
- 프로그램이 특정 조건이나 사용자 행동에 대응하여 원하는 동작을 수행하도록 하는 데 사용된다.
핸들러(Handler)를 사용하면 코드의 모듈성과 유지보수성을 향상시킬 수 있고
각 기능이나 이벤트에 대한 처리를 모듈화하여 구현할 수 있다.
728x90
@rlozlr :: 얼렁뚱땅 개발자
얼렁뚱땅 주니어 개발자
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!