RE: Use libwww with MT library on Solaris

libwww isn't threadsafe

-----Original Message-----
From: www-lib-request@w3.org [mailto:www-lib-request@w3.org]On Behalf Of
yajun_liu@peoplesoft.com
Sent: Tuesday, March 21, 2000 2:55 PM
To: www-lib@w3.org
Subject: Use libwww with MT library on Solaris



Hi there,

I tried to link libwww with a 3th party library which use multi-threading.
Before I link with the library, an application based on libwww worked fine.
After I link with the library, I got a deadlock. Here is the trace for that
thread. Any help is appreciated.

Thanks.

--Yajun

Current function is LibW3Http::LibW3Http
  107       HTProfile_newNoCacheClient("PSHTTP", "1.0");
(dbx) where
current thread: t@1
  [1] __sigprocmask(0x0, 0xffbeec60, 0x0, 0x0, 0x9, 0x0), at 0xfeae8454
  [2] __bounceself(0x0, 0x73574, 0xfeafaf64, 0x735a4, 0xfdfb38f0, 0x735ac),
at 0
xfeade3cc
  [3] _ti_cond_wait(0xfdfb7db8, 0xfeafc9b0, 0x4356, 0xfeafaf64, 0xfdfb38f0,
0xfe
adc53c), at 0xfead9570
  [4] _ti_pthread_rwlock_rdlock(0xfdfb7d98, 0x5000, 0xfeafaf64, 0x5257,
0xfdfb38
f0, 0xfdfb7db8), at 0xfeadc53c
  [5] _fflush_u_iops(0x0, 0x1, 0xfdfb38f0, 0xff3dcf40, 0xfdfb38f0,
0xfdf39320),
at 0xfdf8ae24
  [6] abort(0xfdfb38f0, 0x0, 0xff2c1d90, 0xfdf8a900, 0xfdfb38f0,
0xfdf91d64), at
 0xfdf393e4
  [7] _rmutex_unlock(0xfdfb75a8, 0x1, 0x0, 0xfdf8b324, 0xfdfb38f0,
0xfeadc65c),
at 0xfdf91dbc
  [8] getiop(0x0, 0xfdfbb514, 0xfdfb75a8, 0xfdfb7d7c, 0xfeafc9b0,
0xfdf8a900), a
t 0xfdf8b248
  [9] _findiop(0xff20ca9c, 0x13, 0xfdfb38f0, 0xfdfb7d90, 0xfdfb7d7c,
0xfdfb7be4)
, at 0xfdf8a924
  [10] fopen(0xff284844, 0xff284858, 0x100, 0x0, 0x0, 0x0), at 0xfdf8b324
  [11] HTGetHostName(), at 0xff20ca9c
  [12] HTUserProfile_localize(up = 0xb37e8), at 0xff26b6ec
  [13] HTLibInit(AppName = 0x688c8 "PSHTTP", AppVersion = 0x688d0 "1.0"),
at 0xf
f210810
  [14] client_profile(AppName = 0x688c8 "PSHTTP", AppVersion = 0x688d0
"1.0", pr
eemptive = '\0', cache = '\0', HTMLParser = '\0'), at 0xff2402b0
  [15] HTProfile_newNoCacheClient(AppName = 0x688c8 "PSHTTP", AppVersion =
0x688
d0 "1.0"), at 0xff240784
=>[16] LibW3Http::LibW3Http(this = 0x68f50), line 107 in "libw3http.cpp"
  [17] __STATIC_CONSTRUCTOR(), line 27 in "pshttp.cpp"
  [18] _init(0x0, 0x543dc, 0xfdfb5e18, 0xfdfb38f0, 0x0, 0x0), at 0x543b4

Received on Tuesday, 21 March 2000 19:10:19 UTC