class_docstr: A basic HeartMonitor class
  ping_stream: a PUB stream
  pong_stream: an ROUTER stream
  period: the period of the heartbeat in milliseconds
class_docstr_tok: ["A","basic","HeartMonitor","class","ping_stream",":","a","PUB","stream","pong_stream",":","an","ROUTER","stream","period",":","the","period","of","the","heartbeat","in","milliseconds"]
code: def _loop_default(self):
      return ioloop.IOLoop.current()
  
imports: import asyncio
  import logging
  import time
  import uuid
  import zmq
  from jupyter_client.session import Session
  from tornado import ioloop
  from traitlets import Bool, Dict, Float, Instance, Integer, Set, default
  from traitlets.config.configurable import LoggingConfigurable
  from zmq.devices import ThreadDevice, ThreadMonitoredQueue
  from zmq.eventloop.zmqstream import ZMQStream
  from ipyparallel.util import bind, connect, log_errors, set_hwm
label_desc: Use image node_id 2 for calling the HeartMonitor obj's underlying member method code with example usage: obj._loop_default() and returns: ioloop