Background Image

FORUM

조회 수 7284 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안녕하세요. 간단한 문의 드립니다.


CCI API가 Thread Safe 한지요?


예를 들어 Thread를 5개를 구동 시키고 각 스레드 안에서 전역 변수로 DB 핸들을 이용하여

Insert 혹은 Select 등을 동시에 수행 할 때 문제가 없는지 문의 드립니다.


추가로 JDBC의 경우에도 마찬가지로 Thread Safe 한지 궁금합니다.


답변 부탁드립니다.


  • ?
    이용미 2012.09.05 02:04

    안녕하세요. 질문 감사 드립니다.

    말씀하신 것처럼 각각의 thread에서 동일한 전역변수를 사용하여 DB를 핸들링 한다면 thread 간 변수 공유를 의미하기 때문에 thread safety를 보장할 수 없습니다.

    이 경우, thread간 다른 전역변수를 사용하는 방법이 있으며, thread 마다 Connection을 소유하는 것을 예로 들 수 있습니다.

    이는 CCI 뿐만 아니라 JDBC도 동일하므로 참고하시기 바랍니다.

  • ?
    nimbus89 2012.09.05 02:54

    질문을 드리기 전에 위에서 말씀드린 조건으로 Sample 코드를 작성하여 테스트 해보았는데 작동상 문제가 없는 것 같았습니다.

    다만 API 상에 Thread Safe에 대한 언급이 없어서 다시 질문 드린 것이었구요.

    정리하면 말씀드린 환경에서 작동할 수는 있으나 구조상 CCI API가 Thead Safe 하게 설계되지 않았으므로

    오작동할 여지가 남아 있어 권장하지 않는다고 생각하면 될지요?


  • ?
    cgkang 2012.09.05 05:50

    질문에서 전역변수를 사용하여 DB를 핸들링한다는 부분에서 약간 오해가 있었을것 같습니다.

    응용에서 전역변수를 처리하는 문제는 응용의 영역이기 때문에 CCI/JDBC와는 별개로 보입니다.

     

    여러개의 쓰레드가 하나의 커넥션을 공유해서 사용해야 하는 경우에는 문제가 될 수 있으나,

    각 쓰레드가 서로 다른 커넥션을 할당받아서 수행하는 구조에서는 문제없으면, 일반적으로 사용되고 있는 구조입니다.

     


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4286
1016 CCI API 에서 #pragma pack(push,1) 오류 2 David Kang 2009.08.25 10619
1015 테이블 구성 방안 문의 2 종이 2012.05.01 10621
1014 테이블 삭제시 오류에 대하여... 2 메이커스 2009.08.01 10621
1013 테이블 파티션 -> 일반 테이블 변경 문의 4 초보 2010.04.09 10621
1012 JEUS 사용시 큐브리드 Charset 설정 문의 1 식이77 2014.10.14 10623
1011 loaddb 에러 발생. 2 스팅거 2009.10.09 10625
1010 큐브리드 쿼리 문법 1 신데렐라 2013.04.18 10630
1009 디비데이터 조회시 한글이 물음표로 나옵니다. 3 하아품 2016.06.13 10645
1008 HA 구성오류 답변 부탁드립니다. 7 영길 2013.10.23 10654
1007 PDO가 지원되고 있는 건가요? 1 kkh 2011.07.09 10660
1006 복제 DB가 생성이 되질 않습니다... 긴급!! 2 닉넴 2011.05.27 10661
1005 쿼리 브라우저에서 유저별 현재 사용 data 용량확인 하는 방법 좀 알려주세요 1 황선욱 2014.09.05 10663
1004 cubrid 이중화 문의좀드립니다 3 곰팅팅이 2016.03.25 10665
1003 bit형 데이터타입 관련 2 소라게 2012.01.27 10669
1002 CM서버의 비밀번호를 분실시 cm.pass 초기화 및 connect timed out 관련 문의드립니다. 1 dashbell 2014.07.24 10670
1001 & 등의 특수문자등이 변환되어 저장되는 경우 1 호랑이야옹 2012.12.28 10671
1000 CLOB 포함 테이블 내보내기/가져오기 좀 도와주세요 ㅠㅠㅠ 1 유릉 2014.11.10 10680
999 데이타베이스로그인시 lgat화일을 찾으면서 로그인이 안되요.. 2 본좌대바리 2012.02.07 10681
998 cubrid메니저에서 호스트 연결이 되지 않습니다. 2 그리나다 2014.04.01 10682
997 cubrid manager peer not authenticated?? 2 ddan0701 2013.01.22 10684
Board Pagination Prev 1 ... 144 145 146 147 148 149 150 151 152 153 ... 199 Next
/ 199

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales