Node.js | Stream readable.pause() Method

The readable.pause() method is an inbuilt application programming interface of Stream module which is used to stop the flowing mode from emitting ‘data’ events. If any data that becomes accessible will continue to exist in the internal buffer.

Syntax:

readable.pause()

Parameters: This method does not accept any parameters.

Return Value: If this method is used then the reading of data is paused at that time.

Below examples illustrate the use of readable.pause() method in Node.js:



Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Node.js program to demonstrate the     
// readable.pause() method  
  
// Including fs module
const fs = require('fs');
  
// Constructing readable stream
const readable = fs.createReadStream("input.txt");
readable.on('data', (chunk) => {
  console.log(`${chunk}`);
});
  
// Calling pause method
readable.pause();
  
// Checking if paused or not
readable.isPaused();

chevron_right


Output:

true

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Node.js program to demonstrate the     
// readable.pause() method  
  
// Include fs module
const fs = require('fs');
  
// Create readable stream
const readable = fs.createReadStream("input.txt");
  
// Handling data event
readable.on('data', (chunk) => {
  console.log(`Received ${chunk.length} bytes of data.`);
  
  // Calling pause method
  readable.pause();
  
  // After this any data will be displayed 
  // after 1 sec.
  console.log('No further data will be displayed for 1 second.');
  
  // Using setTimeout function
  setTimeout(() => {
    console.log('Now data starts flowing again.');
    readable.resume();
  }, 1000);
});
  
// Displays that program 
// is ended
console.log("Program ends!!");

chevron_right


Output:

Program ends!!
Received 5 bytes of data.
No further data will be displayed for 1 second.
Now data starts flowing again.

However, you can see while running, that after the execution of pause() method, no further data will be displayed for 1 second.

Reference: https://nodejs.org/api/stream.html#stream_readable_pause.




My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.