[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Module for easy multithreading
- From: Илья Удалов <udalovilia@...>
- Date: Fri, 29 Sep 2017 21:05:05 +0300
Yes. Effil sets debug hook. Per 200 instructions by default.
Yes. runner.step = 0 completely disable this hook.
This hook insufficiently effects on performance. About 0.5 % with default value.
You also can add cancelation point effil.yield()
--
Ilia
> On 29 Sep 2017, at 20:53, Hisham <h@hisham.hm> wrote:
>
> Hi,
>
> A tiny off-list question, sorry for being lazy and not checking in the code:
>
> the docs mention the runner.step function, which is specified in terms
> of number of Lua instructions. Does that mean that every thread runs
> with a debug hook plugged in by default? If so, did you notice any
> performance impact in that? Does setting it to 0 fully disable the
> hook?
>
> Thank you for this library! I have used Lanes in the past but I got an
> even better vibe from Effil's docs!
>
> -- Hisham
>
>
>> On 29 September 2017 at 10:13, Илья Удалов <udalovilia@gmail.com> wrote:
>> Hi,
>>
>> Take a look at new gorgeous lua module for multithreading - Effil.
>> Main feature are:
>> - thread safe tables.
>> - threads can be paused/resumed and canceled.
>> - FIFO channels.
>>
>> Install it from luarocks: luarocks install effil
>> Sources hosted on GitHub https://github.com/effil/effil
>> Blog post about Effil:
>> https://mihacooper.github.io/effil/lua/2017/09/28/effil/
>>
>> —
>> Ilia and Miha