On Mon, 14 Aug 2017 13:04:36 -0700 (PDT), Zelphir Kaltstahl
<zelphirkaltst...@gmail.com> wrote:

>I tried with feature-visualizer, but did not save screenshots of 
>the result. Would it help showing them? I was not able to figure
>out the problem, even when clicking the red dots to see what is
>blocking. It made no sense to me, that those operations were
>blocking.

Believe me, I don't understand it very much better.  I rarely use
futures ... a long time ago I came to the conclusion that pretty much
anything other than pure arithmetic or logic is suspect.

>However, I tried a lot of things and don't remember what procedures
>were blocking in which case. I remember, that I once tried to use
>flonum operations and that even they were shown to be blocking,
>while they solved the problem in the guide for parallelization in Racket.

One thing you can try is using 'would-be-future' instead of 'future'.
https://docs.racket-lang.org/reference/futures.html?q=would-be-futures#%28def._%28%28lib._racket%2Ffuture..rkt%29._would-be-future%29%29

'would-be-future' is a debugging form - it creates a pseudo future
that won't be executed in parallel, but when evaluated it logs unsafe
operations that might cause it to block if the evaluation _were_ done
in parallel.
[As long as you don't force [touch] it ... to get the logging you have
to let it be evaluated by the future mechanism AS IF it were a real
future.]

George

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to