[Java lista] DBCP és szaporodó szálak
Mariák Kálmán
sirkalmi at kalmiesemese.hu
2011. Feb. 25., P, 16:47:30 CET
Igazad van, megvan a hiba!
Az égatta világon semmi köze sincs a poolomhoz. A hibát egy olyan
programrész okozta ami tudtommal eddig is kint volt az élesben. Lehet,
hogy mégsem...
A TopDispatcher filter osztályomban az alábbi kód okozta a szál
szaporulatot:
if(isNewSession) {
LookupService service = new LookupService();
Future<InetAddress> future =
service.getByName(request.getRemoteAddr());
try {
InetAddress ia = future.get(1L, TimeUnit.SECONDS);
session.setAttribute("lastHostName", ia.getHostName());
SessionListenerWrapper.getVisitors(session).put(session.getId(),
ia.getHostName());
} catch (Exception e) {
logger.warn(e, e);
}
}
Ez annyit csinál, hogy új session esetén lekérdezi, hogy honnan érkezett
a kérés, majd eltárolja egy lastHostName nevű session attrubútumként.
Annak Ă©rdekĂ©ben, hogy ez ne lassĂtsa le az oldal betöltĹ‘dĂ©sĂ©t egy
LookupService osztályban indĂtok erre egy Ăşj szálat ami valami miatt nem
fejeződik be soha. Azért vagyok értetlen, mert az svn szerint 2010.06.07
-én került ez a ficsőr a kódba és valamiért most jött ki ez a hiba mikor
a pool cserét belehegesztettem.
Megmondom őszintén, hogy szálkezelés ügyben nem vagyok túl expert, ezt a
kódot az internetről kukáztam anno.
Ha esetleg ötlete van valakinek, hogy miért nem hal meg a szál a dolga
végeztével akkor ne tartsa magában! ;-)
Mariák Kálmán
On Fri, 2011-02-25 at 15:49 +0100, Zsombor wrote:
> Nagyon valĂłszĂnűtlen.
--------- következő rész ---------
Egy nem text tĂpusĂş csatolt állomány át lett konvertálva...
NĂ©v: LookupService.java
TĂpus: text/x-java
MĂ©ret: 945 bytes
LeĂrás: nem elĂ©rhetĹ‘
Url : http://javagrund.hu/pipermail/javalist/attachments/20110225/11b78eb6/attachment.bin
További információk a(z) Javalist levelezőlistáról