[Seaside] [FIX] SeasideServiceSyncToSeaside2.3
Stephen Pair
stephen at pairhome.net
Wed Apr 9 01:18:05 CEST 2003
Avi Bryant wrote:
>On Wed, 9 Apr 2003, Stephen Pair wrote:
>
>
>
>>I seem to recall that Seaside used to have a method called
>>#threadSafeValue: added to BlockContext. Maybe I'm wrong. Anyway, if
>>one wanted to use a block with a pluggable http service, then I'll need
>>to use some sort of mechanism like this. To allow multple invocations
>>of the block, I think I'll need to do something like:
>>
>>----
>>BlockContext>>threadSafeValue: arg
>>
>> ^self copy fixTemps value: arg
>>----
>>
>>Why was that message dropped from Seaside?
>>
>>
>
>Because Seaside no longer needs it. It used to be that invoking a
>continuation didn't properly terminate the current stack, so any blocks
>that were in the middle of being executed couldn't ever be executed again.
>Before I figured out what was really going on, I used #threadSafeValue a
>lot to copy blocks before executing them. When I fixed the bug in
>continuation so that the stack got terminated, I was able to remove all
>the sends to #threadSafeValue.
>
>However, in this case you will indeed still need something like that,
>because you're actually dealing with multiple processes evaluating the
>same block at once, not just with continuation issues.
>
>Avi
>
>
Ok...thanks. Just wanted to check.
- Stephen
More information about the Seaside
mailing list