help-smalltalk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-smalltalk] Fix the continue back into GTK/Event-Loop/C-code


From: Holger Hans Peter Freyther
Subject: Re: [Help-smalltalk] Fix the continue back into GTK/Event-Loop/C-code
Date: Tue, 22 Oct 2013 23:44:22 +0200
User-agent: Mutt/1.5.21 (2010-09-15)

On Mon, Oct 21, 2013 at 12:55:16PM +0200, Gwenaël Casaccio wrote:
> Hi,
> 
> here is a patch that fix the continue back into GTK/Event-Loop/C-code
> (with the debugger and text widget).

thank you very much!


> -        self isLastContextSelected ifFalse: [ self stepToSelectedContext ].
> -        debugger step.
> -        self updateContextWidget
> +        TaskQueue uniqueInstance add: [
> +            self isLastContextSelected ifFalse: [ self stepToSelectedContext 
> ].
> +            debugger step.
> +            self updateContextWidget ]

after having looked at the blox code, what do you think about something
like this:


        self debugWith: [debugger step]

and 

        debugWith: aBlock [
                TaskQueue uniqueInstance add: [
                        self isLastContextSelected ..
                        aBlock value.
                        self updateContextWidget
                ]
        ]

?

> +    run [
> +        <category: 'accessing'>
> +
> +        [ | task sem |
> +          sem := Semaphore new.
> +          [ queue peek.
> +            [ queue isEmpty ] whileFalse: [
> +              task := queue next.
> +              [ task ensure: [ sem signal ] ] fork"At: Processor 
> userBackgroundPriority".
> +              sem wait ] ] repeat ] fork
> +    ]

* What prevents the VM to gc this process?
* I assume the queue peek can be removed? Same for the "At:.." comment?
* After looking into "updating" code at runtime I try to avoid having
  too much code in a '[] repeat'







reply via email to

[Prev in Thread] Current Thread [Next in Thread]