zoukankan      html  css  js  c++  java
  • Node.js 回调函数 1) 阻塞 ,同步 2) 非阻塞 ,异步.

    1.阻塞. 同步.

     1) 读取的文件: input.txt

    菜鸟教程官网地址:www.runoob.com

    2) main.js

    1 var fs = require("fs");
    2 
    3 //同步读取, 阻塞代码,按顺序执行的
    4 var data = fs.readFileSync('input.txt');
    5 
    6 console.log(data);
    7 console.log(data.toString());
    8 console.log("程序执行结束!");

     执行:

    注意:

     第一:绿色方框的是 输出 data.     可见 不可以直接输出读取的文件,  要使用  data.toString()

    第二: 阻塞执行 ,是同步的, 按照顺序的.

     

     如果指定 字符集.

    1 var fs = require("fs");
    2 
    3 //同步读取, 阻塞代码,按顺序执行的
    4 var data = fs.readFileSync('input.txt', 'utf8');
    5 console.log(data);
    6 console.log(data.toString());
    7 console.log("程序执行结束!");

    执行:

    2. 非阻塞 ,异步:

    1) 要读取的文件 .   input.txt

    菜鸟教程官网地址:www.runoob.com

    2) main.js

     1 var fs = require("fs");
     2 
     3 //同步读取, 阻塞代码,按顺序执行的
     4 // var data = fs.readFileSync('input.txt');
     5 // console.log(data);
     6 // console.log(data.toString());
     7 // console.log("程序执行结束!");
     8 
     9 //异步读取, 阻塞, 不是按照顺序.
    10 fs.readFile("input.txt", function(err, data){
    11     //err:
    12     console.log("err:", err);
    13     if (err) {
    14         return console.error(err);
    15     };
    16     console.log(data);
    17 
    18     console.log(data.toString());
    19 });
    20 
    21 console.log("程序执行结束!");

    执行:

     -----------------

    如果指定 字符集.

    var fs = require("fs");
    
    //同步读取, 阻塞代码,按顺序执行的
    // var data = fs.readFileSync('input.txt');
    // console.log(data);
    // console.log(data.toString());
    // console.log("程序执行结束!");
    
    //异步读取, 阻塞, 不是按照顺序.
    // fs.readFile("input.txt", function(err, data){
    //     //err:
    //     console.log("err:", err);
    //     if (err) {
    //         console.error(err);
    //     };
    //     console.log(data);
    
    //     console.log(data.toString());
    // });
    
    // console.log("程序执行结束!");
    
    fs.readFile("input.txt","utf8", function(err, data){
        //err:
        console.log("err:", err);
        if (err) {
            return console.error(err);
        };
        console.log(data);
    
        console.log(data.toString());
    });
    
    console.log("程序执行结束!");

     

    参考链接:

      Node.js 回调函数

  • 相关阅读:
    【NOIp 2004】【DFS+剪枝】虫食算
    【NOIp 2014】【二维dp】飞扬的小鸟
    【NOIp 2003】【树结构·搜索】传染病防治
    【模板】匈牙利算法——二分图最大匹配
    【模板】网络流——Dinic
    【NOIp复习】STL
    【NOIp 2002】【BFS+STL】字串变换
    【vijos】【贪心】最小差距
    TensorFlow 矩阵变量初始化后的计算例子
    TensorFlow 变量初始化
  • 原文地址:https://www.cnblogs.com/cbza/p/7264372.html
Copyright © 2011-2022 走看看