No, julia has to GIL. It has segfault if you try to call functions from 
different threads ;-)

Am Freitag, 20. Juni 2014 21:55:08 UTC+2 schrieb Aerlinger:
>
> Julia in its present implementation uses a global-interpreter lock much 
> like most other dynamic programming languages, correct?
>
> On Friday, June 20, 2014 10:51:17 AM UTC-4, Stefan Karpinski wrote:
>>
>> For concurrent I/O, green threads are far more scalable than using kernel 
>> threads. For concurrent computation, green threads don't buy you anything, 
>> but exposing kernel threads directly as in C++ or Java forces all library 
>> authors to become experts on concurrency since they have to make sure all 
>> of their code is thread-safe, at the very least. Either that or everyone 
>> has to worry about which libraries than can or can't use in concurrent 
>> code. It rapidly becomes a mess. Our current approach to concurrent 
>> computation is a shared-nothing multi-process model that also works across 
>> machines. 
>>
>>
>> On Fri, Jun 20, 2014 at 5:57 AM, Tobias Knopp <[email protected]> 
>> wrote:
>>
>>> I think the answer to this question is not tight to Julia. Both models 
>>> have advantagous and they are actually not comparable 1 to 1.
>>>
>>> One simple reason why Julia currently has no threads is that libjulia is 
>>> not thread safe. I am experimenting in changing this (see 
>>> https://github.com/JuliaLang/julia/pull/6741) but it is far from clear 
>>> if this will be feasible in the end.
>>>
>>> Cheers,
>>>
>>> Tobi
>>>
>>> Am Freitag, 20. Juni 2014 11:32:11 UTC+2 schrieb Bienlein:
>>>
>>>> Hello,
>>>>
>>>> I'd like to ask why Julia does not have a conventional thread model à 
>>>> la Java, C++, etc. but is based on couroutines. Not that I would criticise 
>>>> this. I would just like to know in what way the use case of Julia promotes 
>>>> couroutines simply out of interest, because it is not obvious to me.
>>>>
>>>> Thanks, Bienlein
>>>>
>>>
>>

Reply via email to