webpack-dev-server electron multithreading
Looking to better understand the way to approach my desired goal. Building an electron application that will perform processor intense tasks. I would like to utilize multithreaded design using the approach of creating a hidden BrowserWindow() for each task.
I am currently using electron-webpack and webpack-dev-serve for development. I am having limited success at the moment. What would be the best/cleanest way to have the following architecture that runs both in development and production mode.
Desired Architecture
I currently have main.js and renderer.js working well. Now I am attempting to run additional BrowserWindows that will perform more processor intensive task, but I am not sure on how to get this working. I did find a good example here of electron background processing, but this does not involve using electron-webpack and webpack-dev-serve.
I was thinking to have my src code like this
src/common/task1/
- task1.html
- task1.js
src/common/task2/
- task2.html
- task2.js
In my main.js (production) I would have:
let bg = new BrowserWindow({ show: false })
bg.loadURL(url.format({
pathname: path.join(__dirname, 'common/task1/task1.html'),
protocol: 'file',
slashes: true
}))
currently, I can see common/* bundled in my app.asar. However, it does not seem to load the task1.html file. I have the BrowserWindow set show: true
. So I do see the window and I don't see any errors. However, my <h1>
tag to prove the html is loaded is not showing in the window. I don't need any HTML to display, because the window should be hidden and I only wish to use the window to run processor intensive javascript code.
multithreading webpack electron webpack-dev-server
add a comment |
Looking to better understand the way to approach my desired goal. Building an electron application that will perform processor intense tasks. I would like to utilize multithreaded design using the approach of creating a hidden BrowserWindow() for each task.
I am currently using electron-webpack and webpack-dev-serve for development. I am having limited success at the moment. What would be the best/cleanest way to have the following architecture that runs both in development and production mode.
Desired Architecture
I currently have main.js and renderer.js working well. Now I am attempting to run additional BrowserWindows that will perform more processor intensive task, but I am not sure on how to get this working. I did find a good example here of electron background processing, but this does not involve using electron-webpack and webpack-dev-serve.
I was thinking to have my src code like this
src/common/task1/
- task1.html
- task1.js
src/common/task2/
- task2.html
- task2.js
In my main.js (production) I would have:
let bg = new BrowserWindow({ show: false })
bg.loadURL(url.format({
pathname: path.join(__dirname, 'common/task1/task1.html'),
protocol: 'file',
slashes: true
}))
currently, I can see common/* bundled in my app.asar. However, it does not seem to load the task1.html file. I have the BrowserWindow set show: true
. So I do see the window and I don't see any errors. However, my <h1>
tag to prove the html is loaded is not showing in the window. I don't need any HTML to display, because the window should be hidden and I only wish to use the window to run processor intensive javascript code.
multithreading webpack electron webpack-dev-server
add a comment |
Looking to better understand the way to approach my desired goal. Building an electron application that will perform processor intense tasks. I would like to utilize multithreaded design using the approach of creating a hidden BrowserWindow() for each task.
I am currently using electron-webpack and webpack-dev-serve for development. I am having limited success at the moment. What would be the best/cleanest way to have the following architecture that runs both in development and production mode.
Desired Architecture
I currently have main.js and renderer.js working well. Now I am attempting to run additional BrowserWindows that will perform more processor intensive task, but I am not sure on how to get this working. I did find a good example here of electron background processing, but this does not involve using electron-webpack and webpack-dev-serve.
I was thinking to have my src code like this
src/common/task1/
- task1.html
- task1.js
src/common/task2/
- task2.html
- task2.js
In my main.js (production) I would have:
let bg = new BrowserWindow({ show: false })
bg.loadURL(url.format({
pathname: path.join(__dirname, 'common/task1/task1.html'),
protocol: 'file',
slashes: true
}))
currently, I can see common/* bundled in my app.asar. However, it does not seem to load the task1.html file. I have the BrowserWindow set show: true
. So I do see the window and I don't see any errors. However, my <h1>
tag to prove the html is loaded is not showing in the window. I don't need any HTML to display, because the window should be hidden and I only wish to use the window to run processor intensive javascript code.
multithreading webpack electron webpack-dev-server
Looking to better understand the way to approach my desired goal. Building an electron application that will perform processor intense tasks. I would like to utilize multithreaded design using the approach of creating a hidden BrowserWindow() for each task.
I am currently using electron-webpack and webpack-dev-serve for development. I am having limited success at the moment. What would be the best/cleanest way to have the following architecture that runs both in development and production mode.
Desired Architecture
I currently have main.js and renderer.js working well. Now I am attempting to run additional BrowserWindows that will perform more processor intensive task, but I am not sure on how to get this working. I did find a good example here of electron background processing, but this does not involve using electron-webpack and webpack-dev-serve.
I was thinking to have my src code like this
src/common/task1/
- task1.html
- task1.js
src/common/task2/
- task2.html
- task2.js
In my main.js (production) I would have:
let bg = new BrowserWindow({ show: false })
bg.loadURL(url.format({
pathname: path.join(__dirname, 'common/task1/task1.html'),
protocol: 'file',
slashes: true
}))
currently, I can see common/* bundled in my app.asar. However, it does not seem to load the task1.html file. I have the BrowserWindow set show: true
. So I do see the window and I don't see any errors. However, my <h1>
tag to prove the html is loaded is not showing in the window. I don't need any HTML to display, because the window should be hidden and I only wish to use the window to run processor intensive javascript code.
multithreading webpack electron webpack-dev-server
multithreading webpack electron webpack-dev-server
asked Nov 19 '18 at 12:41
user2027058
33
33
add a comment |
add a comment |
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53374884%2fwebpack-dev-server-electron-multithreading%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53374884%2fwebpack-dev-server-electron-multithreading%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown