Size: a a a

2018 May 29

M

Mike_Went in ru.nim.talks
Глобальные объекты и потоки — плохо
источник

M

Mike_Went in ru.nim.talks
🤔
источник

AD

Andrii D in ru.nim.talks
да, может, но мне надо как-то вернуть результат вычислений...и мне фиолетово как...лишь бы потоки на самом деле распаралелили задачу, а не выполнялись один за другим
источник

M

MIT/Benzands in ru.nim.talks
так threadpool это и делает
источник

M

MIT/Benzands in ru.nim.talks
вот какой-то пример threadpool'а
источник

M

MIT/Benzands in ru.nim.talks
источник

M

MIT/Benzands in ru.nim.talks
источник

M

MIT/Benzands in ru.nim.talks
источник

AD

Andrii D in ru.nim.talks
а что такое это spawn, как оно связано с parallel, и чем отличается от Thread-ов обычных?
источник

M

MIT/Benzands in ru.nim.talks
там в мануале всё написано)
источник

M

MIT/Benzands in ru.nim.talks
Nim has two flavors of parallelism:

   Structured parallelism via the parallel statement.
   Unstructured parallelism via the standalone spawn statement.

Nim has a builtin thread pool that can be used for CPU intensive tasks. For IO intensive tasks the async and await features should be used instead. Both parallel and spawn need the threadpool module to work.

Somewhat confusingly, spawn is also used in the parallel statement with slightly different semantics. spawn always takes a call expression of the form f(a, ...). Let T be f's return type. If T is void then spawn's return type is also void otherwise it is FlowVar[T].

Within a parallel section sometimes the FlowVar[T] is eliminated to T. This happens when T does not contain any GC'ed memory. The compiler can ensure the location in location = spawn f(...) is not read prematurely within a parallel section and so there is no need for the overhead of an indirection via FlowVar[T] to ensure correctness.

Note: Currently exceptions are not propagated between spawn'ed tasks!
источник

AD

Andrii D in ru.nim.talks
аааа, вот почему с выводом в консоль parallel вел себя совсем не как parallel
источник

AD

Andrii D in ru.nim.talks
спасибо!)
источник
2018 May 30

З/

Зелёный /4Y/ in ru.nim.talks
Доброго времени суток. Пришел задать частично тупой вопрос. Тупой, потому что возможно то обычная практика, но я с тим никогда так не сталкивался.
Короче задача такая:
На старте распаристь "скрипт" и потом выполять его на ниме.

Достаточно пнуть меня в нужном направлении. Думаю полёт нормальный будет. Спасибо
источник

M

MIT/Benzands in ru.nim.talks
???
источник

M

MIT/Benzands in ru.nim.talks
что за "скрипт"?
источник

З/

Зелёный /4Y/ in ru.nim.talks
свой дико урезанный язык
источник

M

MIT/Benzands in ru.nim.talks
а в чём именно проблема?))
источник

З/

Зелёный /4Y/ in ru.nim.talks
Я вообще хз как с тим работать. Я с таким дело имел, но на интерпритируемых языках. Там было проще. Взял скрипт, конвертировал в нужный язык и подсунул в соседний вызов.
источник

M

MIT/Benzands in ru.nim.talks
и у тебя именно скрипт или просто конфиг?
источник