Java JDBC환경인데요,
자바로 소켓 서버를 만들어서 클라이언트들이 통신을 하고 있습니다.
그래서 클라이언트마다 쓰레드가 하나씩 있구요,
또 다른곳에는 0.1초마다 반복 실행되는 쓰레드가 또 있습니다.
이런식으로 0.1초 마다 db내용이 계속 갱신되고,
또 클라이언트가 통신을 할 때 마다 db내용이 계속 갱신됩니다.
이런 환경에서, 가끔씩
Attempt to access a closed ResultSet 이라는 오류가 나는군요
어떨땐 Attempt to access a closed PrepredStatement 가 나오기도 합니다.
해결 방법이 없을까요?
지금 모든 쓰레드들은 하나의 클래스 안에 들어있는데,
이 쓰레드들이 하나의 CUBRIDConnection 객체를 공유해서 써도 괜찮나요?
아니면 쓰레드별로 각각 커낵션을 만들어줘야 하는건가요...?
그리고 지금은 연결을 공유하는데..
0.1초 마다 반복되는 쓰레드에서도 계속 commit를 해주고,
각 클라이언트 쓰레드에서도 통신이 올 때 마다 commit를 하는데요
이래도 괜찮나요?
|