The Wayback Machine - https://web.archive.org/web/20201129105456/https://github.com/nodejs/node/issues/36154
Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to unref readline? #36154

Open
szmarczak opened this issue Nov 17, 2020 · 5 comments
Open

How to unref readline? #36154

szmarczak opened this issue Nov 17, 2020 · 5 comments

Comments

@szmarczak
Copy link
Contributor

@szmarczak szmarczak commented Nov 17, 2020

Is your feature request related to a problem? Please describe.

const readline = require('readline');

const input = readline.createInterface({
	input: process.stdin
});

The code above just hangs.

Describe the solution you'd like

const readline = require('readline');

const input = readline.createInterface({
	input: process.stdin
});

+input.unref();

Describe alternatives you've considered

None yet.

@szmarczak
Copy link
Contributor Author

@szmarczak szmarczak commented Nov 17, 2020

Solved via process.stdin.unref();

@szmarczak szmarczak closed this Nov 17, 2020
@szmarczak
Copy link
Contributor Author

@szmarczak szmarczak commented Nov 17, 2020

Although I think it would be nice to add this to docs, so I'll reopen.

@RaisinTen
Copy link
Contributor

@RaisinTen RaisinTen commented Nov 20, 2020

@szmarczak I think instead of hanging, the program is waiting for the end of stdin.
If you start logging what the program reads like the docs say, you will see that it comes to an end after the input is over:

const readline = require('readline');

const input = readline.createInterface({
    input: process.stdin
});

input.on('line', (line) => {
    console.log(line);
})

Here is the log of a run:

time echo 'here is a line'|node index
here is a line
echo 'here is a line'  0.00s user 0.00s system 33% cpu 0.002 total
node index  0.07s user 0.02s system 63% cpu 0.140 total
@danielglazer
Copy link

@danielglazer danielglazer commented Nov 20, 2020

@szmarczak if still need to address this issue and add this functionality to the doc I would like to take this and open a PR.
Just want to make sure what is being asked... in this API doc I need to add an example as you described? can you maybe give me any advice about in which section do you think that it would be wise to add this example to?

@szmarczak
Copy link
Contributor Author

@szmarczak szmarczak commented Nov 20, 2020

At the end of readline.createInterface(options) section

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.