class_docstr: Create a zmq Context
  
  A zmq Context creates sockets via its ``ctx.socket`` method.
class_docstr_tok: ["Create","a","zmq","Context","A","zmq","Context","creates","sockets","via","its","``","ctx.socket","``","method","."]
docstr: Close or terminate the context.
  
  Context termination is performed in the following steps:
  
  - Any blocking operations currently in progress on sockets open within context shall
    raise :class:`zmq.ContextTerminated`.
    With the exception of socket.close(), any further operations on sockets open within this context
    shall raise :class:`zmq.ContextTerminated`.
  - After interrupting all blocking calls, term shall block until the following conditions are satisfied:
      - All sockets open within context have been closed.
      - For each socket within context, all messages sent on the socket have either been
        physically transferred to a network peer,
        or the socket's linger period set with the zmq.LINGER socket option has expired.
  
  For further details regarding socket linger behaviour refer to libzmq documentation for ZMQ_LINGER.
  
  This can be called to close the context by hand. If this is not called,
  the context will automatically be closed when it is garbage collected.
docstr_tok: ["Close","or","terminate","the","context",".","Context","termination","is","performed","in","the","following","steps",":","-","Any","blocking","operations","currently","in","progress","on","sockets","open","within","context","shall","raise",":","class",":","`","zmq.ContextTerminated","`",".","With","the","exception","of","socket.close","(",")",",","any","further","operations","on","sockets","open","within","this","context","shall","raise",":","class",":","`","zmq.ContextTerminated","`",".","-","After","interrupting","all","blocking","calls",",","term","shall","block","until","the","following","conditions","are","satisfied",":","-","All","sockets","open","within","context","have","been","closed",".","-","For","each","socket","within","context",",","all","messages","sent","on","the","socket","have","either","been","physically","transferred","to","a","network","peer",",","or","the","socket","'s","linger","period","set","with","the","zmq.LINGER","socket","option","has","expired",".","For","further","details","regarding","socket","linger","behaviour","refer","to","libzmq","documentation","for","ZMQ_LINGER",".","This","can","be","called","to","close","the","context","by","hand",".","If","this","is","not","called",",","the","context","will","automatically","be","closed","when","it","is","garbage","collected","."]
code: def term(self):
      """Close or terminate the context.
  
      Context termination is performed in the following steps:
  
      - Any blocking operations currently in progress on sockets open within context shall
        raise :class:`zmq.ContextTerminated`.
        With the exception of socket.close(), any further operations on sockets open within this context
        shall raise :class:`zmq.ContextTerminated`.
      - After interrupting all blocking calls, term shall block until the following conditions are satisfied:
          - All sockets open within context have been closed.
          - For each socket within context, all messages sent on the socket have either been
            physically transferred to a network peer,
            or the socket's linger period set with the zmq.LINGER socket option has expired.
  
      For further details regarding socket linger behaviour refer to libzmq documentation for ZMQ_LINGER.
  
      This can be called to close the context by hand. If this is not called,
      the context will automatically be closed when it is garbage collected.
      """
      return super(Context, self).term()
  
imports: import atexit
  import os
  from threading import Lock
  from weakref import WeakSet
  from zmq.backend import Context
  from .None import constants
  from .attrsettr import AttributeSetter
  from .constants import ENOTSUP, LINGER, ctx_opt_names
  from .socket import Socket
  from zmq.error import ZMQError
label_desc: Use image node_id 9 for calling the Context obj's underlying member method code with example usage: obj.term() and returns: super