WEBNORI
wiki.webnori.com
자바7의 java.util.concurrent.Future에 익숙하다면 scala.concurrent.Future가 자바 클래스를 감싼것으로 생각할수도 있지만
실제로는 그렇지 않다. java.util.concurrent.Future 클래스는 폴링을 필요로하며 결과를 얻기위해 블로킹 get 메서드를 사용해야만
한다. 하지만 스칼라의 퓨쳐는 블로킹이나 풀링을 사용하지 않고 함수결과를 조합할수 있으며
JAVA8의 CompletetableFuture<T>가 오히려 여기서 설명하는 퓨쳐와 유사하다.
Erik Meijer의 한마디~
"이보게, 브라이언 괴츠, C#,파이선,자바스크립트는 물론 심지어 PHP도 async, await를 지원하고 있다네. 그런 기능이 없는 언어는 자바일뿐이야.
람다를 이용해서 콜백함수를 사용하면 된다고? 천만에 콜백은 최악이야. 도움이 안된다고. 자바 9 버전에 담으려고 하는 걸 다 내려놓고 지금당장
asymc, await부터 넣으라고. 그래야 모두가 행복해질수 있어"
제대로된 비동기 동시성처리는 Java8부터 지원하기 시작했으며 Java언어 순수스펙에서는 await를 프로그래밍 모델을 지원하지 않기때문에 액터모델의
Ask패턴은 비동기처리 완료인 CompelteableFuture를 이용합니다.
다양한 언어로 작성된 액터모델 살펴보기 :
https://wiki.webnori.com/pages/viewpage.action?pageId=106266706
다음 내용이 궁금하다면?
이미 회원이신가요?
2025년 3월 29일 오후 5:08
지난 주 고등학교 동창 몇몇을 만났을 때였다. 그 중 둘의 얼굴이 매우 어두웠다. 공교롭게도 그 날 직원들이 퇴사하겠다며 사표를 냈다고 했다. 청천벽력인 것 같았다. 자신들의 관리 책임으로 돌아올까 봐 걱정하는 눈치였다.
... 더 보기1. 선택권이 주어졌을 때, 분별 있는 사람이라면 복잡한 길보다 단순한 길을 택할 것이다.
1. "최고의 경지에 오른 사람의 노하우나 디테일은 말로 설명하기가 어려워요. 어깨너머로만 배울 수 있어요. 그리고 그 작은 차이가 완성도를 판가름하죠.
오
... 더 보기