사람이 생각하기 어렵고 자동검증수단도 없는 멀티스레드 프로그래밍. 그리고 내 상식과 다르게 동작하는 컴퓨터. 멀티스레드 프로그래밍은 순차적 사고를 하는 프로그래머에게 상당한 정신적 부담을 줍니다. 멀티코어 프로세서를 장착한 하드웨어가 저렴하게 널리 보급되기 시작한 요즘, 이젠 멀티스레드나 병렬 프로그래밍을 어렵다고 무작정 피할 수만도 없게 됐습니다.
아울러 『멀티코어를 100% 활용하는 자바 병렬 프로그래밍』에 대한 간략한 설명도 덧붙여주셨습니다. 과연 멀티스레드 프로그래밍은 왜 난점은 무엇이며, 난국을 타개하는 해결책은 무엇일지 관심있는 분들께서는 이번 스페셜 이슈 글을 주목해보세요.
이 책이 좋은 이유는 우선 프로그래머의 직관이 아닌 체계적인 절차에 의해 스레드에 안전한 클래스를 작성할 수 있는 방법을 제시한다는 점이다. 체계적이라는 것은 기본 규칙만 서로 공유하면 쉽게 코드의 동기화 구조를 이해하고 검증할 수 있으며 남이 작성한 코드를 수정할 때에도 지켜야 하는 규칙을 쉽게 파악할 수 있다는 뜻이다. 이런 방법을 제시하는데 있어 객체 지향적인 설계를 강력한 도구로 활용한다는 점도 바람직한 점이자 이전의 책들과 다른 점이다.