zoukankan      html  css  js  c++  java
  • irb的子会话

    irb支持多个并发的会话。可以在irb中输入irb命令启动一个新的子会话。当前会话只有一个,可以通过jobs命令来列出全部对话,并用fg命令来切换另外一个(休眠的)会话。

    不同的子会话间保持不同的变量空间(相同名字的变量各自有自己的值)。

    每个子会话会使用自己会话提示符。主会话使用irb标示,其他的子会话依次使用irb#1、irb#2等来表示。如果在启动子会话时候,指定了一个对象作为参数,那么该对象作为该会话的默认对象,绑定为该会话的self对象。同时提示符中也有所体现。

    d:\>irb
    irb(main):001:0> irb
    irb#1(main):001:0> irb "another"
    irb#2(another):001:0> jobs
    => #0->irb on main (#<Thread:0x34cc748>: stop)
    #1->irb#1 on main (#<Thread:0x3a49e8c>: stop)
    #2->irb#2 on another (#<Thread:0x3a43a78>: running)
    irb#2(another):002:0> fg 1
    => #<IRB::Irb: @signal_status=:IN_EVAL, @scanner=#<RubyLex:0x3a49e00>, @context=#<IRB::Context:0x3a49e14>>
    irb#1(main):002:0> jobs
    => #0->irb on main (#<Thread:0x34cc748>: stop)
    #1->irb#1 on main (#<Thread:0x3a49e8c>: running)
    #2->irb#2 on another (#<Thread:0x3a43a78>: stop)
    irb#1(main):003:0> exit
    => #<IRB::Irb: @signal_status=:IN_EVAL, @scanner=#<RubyLex:0x3a581bc>, @context=#<IRB::Context:0x3a58518>>
    irb(main):002:0> jobs
    => #0->irb on main (#<Thread:0x34cc748>: running)
    #2->irb#2 on another (#<Thread:0x3a43a78>: stop)
    irb(main):003:0>

    会话管理命令有:

    • irb [对象]
      启动一个新的子会话,并以“对象”作为默认对象而绑定(self)
    • jobs
      显示会话列表
    • cb 对象
      更换一个新的对象绑定
    • fg 会话标示
      切换到一个子会话。会话标示可以是会话号、线程ID、irb对象或绑定的对象等
    • kill 会话标示
      杀死一个子会话。会话标示如上。
    • exit
      退出当前子会话
  • 相关阅读:
    解决 “页面中文字增多,字号突然变大” 的问题
    Seajs的用法
    clientWidth、clientHeight、offsetWidth、offsetHeight以及scrollWidth、scrollHeight
    页面中文字增多,字号会突然变大
    flex的使用实例
    移动端弹窗滚动时window窗体也一起滚动的解决办法
    display:inline-block带来的问题及解决办法
    sql 整理积累
    T-SQL建索引
    php json_encode在CI框架中的使用细节
  • 原文地址:https://www.cnblogs.com/huzhiwei/p/2364042.html
Copyright © 2011-2022 走看看