mcsong's languid afternoon
매력적인 illy 커피와 함께...
Location | Tag | Guest Book  |  A | P
BLOG main image
Notice
기술적인 이슈들은 WWW.SJAVA.NE..
좌측 상단에 이미지를 넣어봤습..
댓글 다시는 분들께 클릭을 해..
에드센드 위치를 바꿨습니다..
카테고리를 약간 수정하였습니다.
CATEGORY
전체 (333)
궁시렁대기!! (82)
소식들보기!! (26)
여행속으루!! (20)
wedding tour (16)
domestic tour (4)
음악이야기!! (12)
책 이야기!! (17)
Apache (28)
Tomcat (9)
Struts (9)
Dev (100)
.Net (14)
Java (60)
JavaScript (4)
Eclipse (14)
OS (12)
Windows (9)
Unix/Linux (3)
Patterns (10)
Web (9)
비공개문서 (3)
TAGS
java eclipse tomcat 스위스 c# 구글 자바 Google 스트러츠2 Daum 톰캣 Apache Struts Apache Tomcat Struts2 이클립스 design pattern apache 애드센스 Ant 체르맛 책 ASP.NET ibatis Tips 다음 gmail mssql 지메일 firefox 오픈마루 Regular Expression jsp 블리자드 Javascript windows jdbc 검색 파울로 코엘료 reactor .net 주제 사라마구 Pattern proactor Reflection tail me2day java.nio php 패턴 스프링노트 미투데이 cvs 스타크래프트2 jnlp Google Calendar log GoF Design Pattern cvsnt 야후 vim
Recent Entries
GUI를 위한 ICON 검색엔진..
서태지 8집 린킨 파크가 오버..
주경복 후보를 지지합니다. (1)
서태지 8집 티저 영상이라는..
테터 스팸 댓글 지우기..
IBatis에서 MSSQL의 Insert문..
Comparing Two High-Performa..
서울을 거닐며 사라져가는 역..
Synchronized, ReentrantLock..
전자태그 바꾸라고 또 왔습니..
Recent Comments
http://www.pointpia.com/joinus..
10/14 - 부업
저도 저거 한번만 받아 보면 소..
09/06 - Lance K
네.. 맞습니다. http://www.pi..
08/14 - mcsong
오, DI가 뭐지 오랜기간 찾아 다..
08/14 - artworker
오늘 투표하고 왔습니다. 투표..
07/30 - mcsong
댓글이 동일한게 2개라서 한개는..
06/09 - mcsong
관리자만 볼 수 있는 댓글입니다.
06/06 -
그런거였군요 ㅎㅎ 답변 감사합..
04/23 - Hwee
정말 유용하네요.. 감사합니다 ^^
04/22 - icarus
cvs 백업은 repository를 그냥..
04/22 - mcsong
Recent Trackbacks
눈뜬 자들의 도시
The note of Legendre
자바 문자열 객체(String,String..
나는 내 일을 즐기며, 사랑한다.
Java Reflection...
Honesty
눈뜬 자들의 도시 - 주제 사라마구
:: CodingStar★☆ / 코딩스타★..
[문학]눈먼 자들의 도시 - 껍질..
달빛에 새어드는 별빛
구글 캘린더-아웃룩 동기화 툴 :..
낭만변태 | RomanTic B. World
구글 칼렌다와 아웃룩 씽크
정보와 휴식...그리고 미래
정규식 쉽게 만들기 - RegexBuddy
bakion
IE용 디버깅 툴
Pell's seer Blog
애드센스 첫 수표 수령 및 환전기.
스테판's BlaBla
Calendar
«   2008/11   »
일 월 화 수 목 금 토
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            
Archive
2008/08
2008/07
2008/05
2008/04
2008/03
2008/02
2008/01
2007/12
2007/11
2007/10
2007/09
2007/08
2007/07
2007/06
2007/05
2007/04
2007/03
2007/02
2007/01
2006/12
2006/10
2006/09
2006/08
2006/07
Link Site
apache / The Jakarta Project
blog / choi won woo
blog / game story
blog / 겟나인스토리
book / 무료 기술서적
CalendarHub - Web Calendars
Examples from The Java Developer..
http://www.clocklink.com/
http://www.java-tips.org/
http://www.koders.com
http://www.tlbox.com/
java / http://allapplabs.com/
java / J2SE DOC KR
java / Java Glossary
java / java2s.com
Javadocs Assemble
Life is so Coooool~~
OpenDNS Blog
shkim blog
social / hpc&ot lab
242341 Visitors up to today!
Today 45 hit, Yesterday 260 hit

Synchronized, ReentrantLock, Thread-Safe 등에 대해서..
2008/04/16 14:46
[Dev]

아래내용은 http://blog.naver.com/mtorange?Redirect=Log&logNo=130014259906 에서 발췌를 하였습니다.

Reentrant Vs Thread-Safe
1. Reentrant 한 함수는 Thread-Safe하다.
2. Thread-Safe 하다고 해서 Reentrant  하다고 볼 수 없다.
Reentrant 한 함수는 다른 Thread가 재진입을 하건 Signal handler에 의해 재진입을 하건 아무 문제 없이 동작하는 함수이다. 따라서 당연히 Thread-Safe 하다.

반면 Thread-Safe한 함수는 여러 Thread가 동시에 접근할 경우 문제만 없으면 된다.
아래 함수는 Thread-Safe하다고 할 수 있지만 Reentrant하다고 볼 수 없다.

void thread_safe_function()
{
  static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER;
  static int context;
  pthread_mutex_lock(&mtx);
  context ++;
  pthread_mutex_unlock(&mtx);
}

아래의 내용은 http://mindwing.kr/103 에서 발췌를 하엿습니다.
synchronized 키워드 대신 java.util.concurrent.ReentrantLock 을 쓰면 다음의 잇점들이 생깁니다.
  - lock 을 얻으려는 스레드를 interrupt 시킬 수 있다.
  - lock 을 얻는데 대한 timeout 을 설정할 수 있다.
  - lock 에 2개 이상의 condition 을 설정해서 쓸 수 있다.
  - synchronized 키워드를 위해 JVM 이 사용하는 lock 기능은 하드웨어의 lock 메커니즘과 잘 매핑되지 않는 문제를 피할 수 있다.

둘 중의 무엇을 쓸 것인지는 다음 가이드를 따르면 됩니다.
  - java.util.concurrent 패키지에는 lock 기능을 제공하는 다른 클래스들이 많이 있다.
  - 데이터 구조등의 사용 목적에 따라 이들 클래스를 쓰는 것이 synchronized 키워드나 ReentrantLock 클래스를 쓰는 것보다 낫다.
  - synchronized 키워드로 잘 동작하고 있는 코드거나 그런 코드를 잘 만들 수 있다면 synchronized 키워드를 쓰는 것이 코드 수도 적고, 에러가 발생할 가능성도 낮다.
  - 여러 condition 을 설정해서 써야 한다면 ReentrantLock 클래스를 쓴다.

2주간 인기글2주간 인기글이 없습니다.

Reentrant, ReentrantLock, synchronized, thread-safe
Trackback0 : Comment0
Trackback Address :: http://www.anfamily.net/mcsong/trackback/340
Name
Password
Homepage
Secret
#1 ... #5 #6 #7 #8 #9 #10 #11 #12 #13 ... #333
Powered by Tattertools.com / Designed by Daisy