sleep()
方法示例有时,您可能需要暂停执行一段时间。 当您在Ruby应用程序中处理地理编码片段或sidekiq作业时,可能会发生这种情况。 为了避免Google API查询限制,您可能需要将程序休眠1秒钟。 在这种情况下,您将需要在Ruby的库中预定义的Ruby sleep()方法。 在许多情况下,您可能需要在任意时间睡眠程序。
sleep()
方法sleep()
方法接受秒数作为参数,并在执行线程作为参数传递的秒数内暂停执行线程。该参数可以数字,浮点数或小数形式传递。如果您正在使用Ruby on Rails的工作,那么你得到的设备来传递与参数.seconds,.minutes或.hours,它可以暂停直至.days为好。
如果您不使用任何睡眠参数或未指定参数,则您希望执行被挂起多少时间,则程序将永远休眠。
让我们借助简短的程序代码来理解概念。
范例1:
=begin Code to make execution sleep for 1 second. =end puts "Hello world! Greetings from Nhooo.com" sleep 1 puts "bye"
输出结果
Hello world! Greetings from Nhooo.com bye [Finished in 1.3s]
上面的代码是用Sublime Text编写和测试的。在那里您可以检查执行时间。上面的程序执行需要0.3秒钟,而挂起线程的睡眠时间是1秒。
现在,让我们绕过sleep方法中的另一个参数来验证执行时间。
范例2:
=begin Code to make execution sleep for 5 seconds. =end puts "Hello world! Greetings from Nhooo.com" sleep 5 puts "bye"
输出:
Hello world! Greetings from Nhooo.com bye [Finished in 5.3s]
上面的代码也是用Sublime Text编写和测试的。程序花费的执行时间为“ .3”秒,而休眠时间为5秒,因为我们已经在方法中传递了5秒作为参数。sleep()
现在,让我们借助下面给出的示例来验证sleep方法是否接受float参数,
范例3:
=begin Code to make execution sleep for 0.75 second. =end puts "Hello world! Greetings from Nhooo.com" sleep 0.75 puts "bye"
输出结果
Hello world! Greetings from Nhooo.com bye [Finished in 1.1s]
借助以上代码,您可以了解sleep变量也接受float参数。