zoukankan      html  css  js  c++  java
  • with关键字

    with关键字

    with表达式其实是try-finally的简写形式。但是又不是全相同。

     

    一、格式

    但是with本身并没有异常捕获的功能,但是如果发生了运行时异常,它照样可以关闭文件释放资源。

    二、原理

     

    with 语句实质是上下文管理。

    1、上下文管理协议。包含方法__enter__() 和 __exit__(),

    支持该协议对象要实现这两个方法。

    2、上下文管理器,定义执行with语句时要建立的运行时上下文,

    负责执行with语句块上下文中的进入与退出操作。

    3、进入上下文的时候执行__enter__方法,如果设置as var语句,

    var变量接受__enter__()方法返回值。

    4、如果运行时发生了异常,就退出上下文管理器。调用管理器__exit__方法。

     

     

    三、应用场景

      1、文件操作。

      2、进程线程之间互斥对象。

      3、支持上下文其他对象

  • 相关阅读:
    班课2
    班课2
    班课1
    lecture 2
    lecture 1
    使用node的fs读取文件
    使用Node.js搭建一个本地服务器
    Node.js前言
    简述ES6其他的东西
    ES6异步操作Thunk、co和async
  • 原文地址:https://www.cnblogs.com/hecity/p/15577767.html
Copyright © 2011-2022 走看看