在NodeJs中,libuv中的线程池是用来执行异步I/O操作的,例如文件读写和网络通信等。默认情况下,线程池有4个线程,但是可以通过设置UV_THREADPOOL_SIZE
环境变量来调整线程池大小。以下是一个简单的示例,演示如何使用线程池在NodeJs中执行文件读取操作:
const fs = require('fs'); fs.readFile('/path/to/file', (err, data) => { if (err) { throw err; } console.log(data.toString()); });
在上面的示例中,fs.readFile()
函数被调用并传入文件路径和读取完成后的回调函数。因为文件读取是一个异步操作,所以libuv将其放入线程池中处理,并且当完成时会调用回调函数。
注意:在运行以上示例之前,请确保文件已经存在并且您的应用程序具有对该文件的读取权限。