[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