RawWaker — 사용자 정의 깨우기 동작의 원시 웨이커

RawWaker — 사용자 정의 깨우기 동작의 원시 웨이커

RawWaker는 작업 실행기(task executor) 구현자가 사용자 정의 깨우기 동작을 제공하는 Waker 또는 LocalWaker를 만들 수 있게 해주는 구조체예요.

출처: Rust 공식 문서

본문

pub struct RawWaker { /* private fields */ }

이것은 깨우기 동작을 사용자 정의하는 데이터 포인터와 **가상 함수 포인터 테이블(vtable)**로 구성돼요.

주요 메서드

// RawWaker와 RawWakerVTable로부터 새 RawWaker를 만들어요.
pub const fn new(data: *const (), vtable: &'static RawWakerVTable) -> RawWaker

// 이 RawWaker의 데이터 포인터를 반환해요.
pub const fn data(&self) -> *const ()

RawWaker는 직접 사용하기보다는 Waker::from_rawLocalWaker::from_raw로 래핑해 사용해요.

더 알아보기 (Learn more)