At times (well, this happened twice) my images get unable to connect the
Internet.
After investigation I found that NetNameResolver>>addressForName:timeout:
was broken because the Semaphore referenced in ResolverMutex refused to
evaluate its critical block, even though they was no other process
involving NetNameResolver running.
I add to explore the classPool of NetNameResolver and evaluate the
following there:
self at: #ResolverMutex put: nil
... which did the trick.
Any idea why the problem appeared in the first place ? Is there a simpler
way to fix it ?
Stephane Rollandin 03/03
---
i found this bug over Christmas (on Windows2K, 3.1alpha 3880):
[Socket initializeNetwork] fork.
Socket initializeNetwork.
if you execute
NetNameResolver addressForName: 'www.yahoo.com' timeout: 45
after executing the first snippet, the NetNameResolver takes the full 45=
seconds to (correctly) return the resolved address, instead of returning as=
soon as it is finished.
stoping and restarting Squeak (and doing Socket initializeNetwork without=
forking) eliminated the problem.
david farber 12/02