
Sergey
05.04.2017
16:34:21
один форк - один процесс

Sheldhur
05.04.2017
16:34:32
ну, а остальные для рендера и прочего
их можно как-то убрать?
чтобы просто один процесс был, а не цепочка из 3х

Google

Sergey
05.04.2017
16:36:12
мне, нет, у меня один процесс, открывает xlsx по очереди в цикле, и читает (любое кол-во xlsx), и передает задачи дочернему процессу, который занимаеться рекурсивным копированием файлов
так быстрее, чем в одном процессе все делать

Sheldhur
05.04.2017
16:37:00
да бле

Sergey
05.04.2017
16:37:02
но можно кнш и в одном все делать

Sheldhur
05.04.2017
16:37:05
я не про это
вот эти 3 процесса можно убрать? или они жизненно важны?

Sergey
05.04.2017
16:39:35
ну, электрон при старте 3 процесса заводит для себя

Sheldhur
05.04.2017
16:39:46
они же как-то с рендером окна связаны, а у меня всё равно ничего не рендерится

Sergey
05.04.2017
16:40:30
всм? ты сломал електрон?
скорее всего просто в коде где-то ошибся

Sheldhur
05.04.2017
16:41:25
чё сломал

Sergey
05.04.2017
16:41:39
ты у меня спрашиваешь?)

Google

Sheldhur
05.04.2017
16:41:42
спавню так .\node_modules\electron\dist\electron.exe -r babel-register -r babel-register ./app/database/workers/DataSetWorker.js

Roman
05.04.2017
16:42:06
электрон вместо ноды?

Sheldhur
05.04.2017
16:42:11
ога

Sergey
05.04.2017
16:42:44
вернемся к старому вопросу, а почему спавн а не форк?)

Roman
05.04.2017
16:42:44
ну ок. раз осознано, то говорить тут нечего

Sergey
05.04.2017
16:43:21
я просто форкаю, все раб, спавнить в електроне не пробовал

Sheldhur
05.04.2017
16:43:29

Sergey
05.04.2017
16:44:16

Sheldhur
05.04.2017
16:44:48
короче не суть, я спрашивал про то как убрать 3 дочерних процесса
ты когда форкаешь, у тебя они тоже создаются?

Sergey
05.04.2017
16:45:08
у тебя fork будет запускать еще один екземпляр электрона)
и даже после компиляции

Sheldhur
05.04.2017
16:45:22
так и спавн тоже самое делает

Sergey
05.04.2017
16:45:38
тык, в чем проблема тогда?
если все раб

Sheldhur
05.04.2017
16:46:04

Sergey
05.04.2017
16:47:10
если это ты их запустил, то можешь их убить либо из родителя child.kill() либо из самого процесса, proccess.exit()

Sheldhur
05.04.2017
16:47:45

Google

Sergey
05.04.2017
16:47:53
а зачем?
тогда не чего работать не будет

Sheldhur
05.04.2017
16:48:27
а нахрен они? они только за рендер отвечают, на сколько я понял
по крайней мере 2 точно

Roman
05.04.2017
16:48:50

Sheldhur
05.04.2017
16:48:50
а окно не рендерится
гм...надо попробовать

Sergey
05.04.2017
16:51:59
мне кажеться твой спавн не будет работать после компиляции

Roman
05.04.2017
16:52:09
круто :)

Sheldhur
05.04.2017
16:52:42
будет, это тот же самый форк, только форк по умолчанию пробрасывает rpc

Sergey
05.04.2017
16:53:44
смотри, когда ты запускаешь електрон, он создает три процесса, когда ты делаешь спавн електрона, он запустит еше три и так далее

Sheldhur
05.04.2017
16:53:44
пути для воркера и электрона в продакшене подправить и всё будет работать

Sergey
05.04.2017
16:54:50

Sheldhur
05.04.2017
16:55:16
ты же сам выше говорил, что у тебя 3 процесса спавнится

Sergey
05.04.2017
16:55:43
так, это мои процессы, это я их создал, и конралирую их всех

Sheldhur
05.04.2017
16:56:24
да всё будет работать, у вас траблы с путями к электрону и воркеру были
это точно так же и в спавне решается

Google

Sheldhur
05.04.2017
16:56:48
я тоже их контролю
захотел открыл, захотел закрыл

Sergey
05.04.2017
16:57:48
ну так твой спавн, порождает 3 просесса, 2 рендер и 1 ноду, зачем тебе лишнии 2 рендера?

Sheldhur
05.04.2017
16:57:56
бля
ты же сам сказал, что когда форкаешь, что у тебя тоже 3 процесса

Sergey
05.04.2017
16:58:23
бля, это мои процессы
я могу и один запустить

Sheldhur
05.04.2017
16:58:33
ты 3 форка делаешь?

Sergey
05.04.2017
16:58:36
а ты не можешь

Sheldhur
05.04.2017
16:58:49
почему? вот запустил один

Sergey
05.04.2017
16:58:58
и породилось три

Sheldhur
05.04.2017
16:59:19

Sergey
05.04.2017
17:00:31

Sheldhur
05.04.2017
17:00:53
ну и всё :) всё тоже самое со спавном
ну зачем, нормально же общались ?

Сергей
05.04.2017
17:03:23
Давайте без спама стикерами

Sergey
05.04.2017
17:04:10

Сергей
05.04.2017
17:04:49

Sergey
05.04.2017
17:04:58
ну лан, как скомпилишь, поделись опытом

Sheldhur
05.04.2017
17:05:46
окай

Google

Сергей
05.04.2017
17:06:00
Не надо полотна
Не читабельно же

Sheldhur
05.04.2017
17:06:16
ну ты же сам постил это плотно ?

Сергей
05.04.2017
17:06:42

Sheldhur
05.04.2017
17:06:45

Sergey
05.04.2017
17:07:58
спавн, может запустить все что угодно, а форк только экземпляр ноды
если тебе нужен еще один экземпляр ноды, то форк будет лучше работать чем спавн

Sheldhur
05.04.2017
17:08:55
ну с ELECTRON_RUN_AS_NODE он и запускает как ноду

Sergey
05.04.2017
17:09:50
через спавн, ты не можешь общаться с дочерним процессом, ты можешь только при старте передать ему параметры запуска

Sheldhur
05.04.2017
17:10:02
ДА ЛАДНО

Sergey
05.04.2017
17:10:06
через форк - можно

Sheldhur
05.04.2017
17:10:11
как же я тогда результат получаю

Sergey
05.04.2017
17:10:38
через child.stout.on(data

Sheldhur
05.04.2017
17:11:01
ну
а через форк ты как общаешься?
я точно также делаю child.on('message'), child.send(), process.send()

Sergey
05.04.2017
17:13:48
- родитель
отправлять
child.send( {type:"yourComand", data: yourData} )
получать
child.on('message', data =>{})
- ребенок
получать
process.on('message', data => {
switch(data.type){}
})
отправлять
process.send( {type:"yourComand", data: yourData} )