GVKun编程网logo

Python time.sleep()的上限?(python的time.sleep(1))

3

如果您想了解Pythontime.sleep的相关知识,那么本文是一篇不可错过的文章,我们将对的上限?进行全面详尽的解释,并且为您提供关于C语言中sleep()的用法、datetime.strptim

如果您想了解Python time.sleep的相关知识,那么本文是一篇不可错过的文章,我们将对的上限?进行全面详尽的解释,并且为您提供关于C语言中sleep()的用法、datetime.strptime()的Python时区'%z'指令不可用、iphone – sleep(),usleep()和[NSThread sleepForTimeInterval:]之间有什么区别?、java中sleep()的用法的有价值的信息。

本文目录一览:

Python time.sleep()的上限?(python的time.sleep(1))

Python time.sleep()的上限?(python的time.sleep(1))

您可以指定一个线程以time.sleep()进入睡眠状态有上限吗?我长时间休眠脚本(即超过1k秒)时遇到问题。Windows和Unix平台上均已出现此问题。

C语言中sleep()的用法

C语言中sleep()的用法

C语言标准库中没有sleep这个函数,它实际上是一个系统API函数。

函数功能: 执行挂起一段时间

1、在VC中使用带上头文件,而且全称为Sleep(),第一个字母需要大写。

#include <windows.h> //需要添加头文件

 Sleep(unisgned long); //函数声明

Windows中,Sleep()里面的单位,是以毫秒为单位,所以如果想让函数滞留1秒的话,应该写成:

 

   Sleep(1000);

2、在gcc中,使用的头文件因gcc版本的不同而不同,一般来说,linux系统需要添加的头文件为:

#include <unistd.h>

应该是Sleep(1000);

在Linux下,sleep()里面的单位是秒,而不是毫秒。

datetime.strptime()的Python时区'%z'指令不可用

datetime.strptime()的Python时区'%z'指令不可用

使用datetime.strptime()的’%z’模式

我有一个表示日期的字符串文本,我完全能够解析它并将其转换为干净的datetime对象:

date = "[24/Aug/2014:17:57:26"dt = datetime.strptime(date, "[%d/%b/%Y:%H:%M:%S")

除了无法使用此处指定的
%z模式 捕获带有 时区 的整个日期字符串
__

date_tz = 24/Aug/2014:17:57:26 +0200dt = datetime.strptime(date, "[%d/%b/%Y:%H:%M:%S %z]")>>> ValueError: ''z'' is a bad directive in format ''[%d/%b/%Y:%H:%M:%S %z]''

因为正如这个错误报告所说

每个平台* 都实现了strftime() *

我精确地指出,朴素的tzinfo指令’%Z’没有这样的问题

解决方法:将tzinfo字符串转换为tzinfo对象

通过使用dateutil模块将GST时间格式字符串转换为tzinfo对象[如此处建议] [4]
,然后将tzinfo插入datetime对象,我可以完美地实现以下解决方法

问题:使%z适用于我的平台?

但是由于显然我将需要%z模式来进行进一步的项目,因此我想找到一个避免这种解决方法的解决方案,并使用外部模块来完成此简单任务。你可以建议我阅读一下吗?我以为较新版本的python(我在2.7上)可以处理它,但是我现在不打算为这个小而重要的细节更改版本。

[编辑]

好吧,看到评论让我重新提出了我的问题:如何在不知道语言环境时间的情况下使用strptime()解析电子邮件时区指示符?

答案1

小编典典

strptime()用纯Python实现。不像strftime();
它[支持哪些指令]与平台无关。%z从Python 3.2开始受支持:

>>> from datetime import datetime>>> datetime.strptime(''24/Aug/2014:17:57:26 +0200'', ''%d/%b/%Y:%H:%M:%S %z'')datetime.datetime(2014, 8, 24, 17, 57, 26, tzinfo=datetime.timezone(datetime.timedelta(0, 7200)))

如何在不知道语言环境时间的情况下使用strptime()解析电子邮件时区指示符?

Python
2.7中没有具体的时区实现。您可以轻松实现UTC偏移量解析,

iphone – sleep(),usleep()和[NSThread sleepForTimeInterval:]之间有什么区别?

iphone – sleep(),usleep()和[NSThread sleepForTimeInterval:]之间有什么区别?

任何身体可以解释我sleep(),usleep()和amp [NSThread sleepForTimeInterval:]?

使用这些方法的最佳条件是什么?

解决方法

sleep(3)是一个posix标准库方法,它尝试将调用线程挂起几秒钟内指定的时间。 usleep(3)做同样的事情,除了需要几微秒的时间。两个实际上都是用nanosleep(2)系统调用来实现的。

最后一个方法做同样的事情,除了它是Foundation框架的一部分,而不是C库调用。它需要一个NSTimeInterval,表示要睡觉的时间量,表示秒和秒的秒数。

对于所有意图和目的,它们在功能上都是相同的,即尝试在一段指定的时间内挂起调用线程。

java中sleep()的用法

java中sleep()的用法

Thread.sleep(long millis)和Thread.sleep(long millis, int nanos) 静态方法 强制当前正在执行的线程休眠( 暂停执行),以“减慢线程”。
当线程睡眠时,它睡在某个地方,在苏醒之前不会返回到可运行状态。
当睡眠时间到期,则返回到可运行状态。
 
线程睡眠的原因: 线程执行太快,或者需要强制进入下一轮,因为Java规范不保证合理的轮换。
 
睡眠的实现:调用静态方法。
         try {
           Thread.sleep(1000);
       } catch (InterruptedException e) {
           e.printStackTrace(); 
       }
 
睡眠的位置:为了让其他线程有机会执行,可以将Thread.sleep()的调用 放线程run()之内。这样才能保证该线程执行过程中会睡眠。
public class TestSleep {
 
  public static void main(String[] args) {
   
    MyThread2 t1 = new MyThread2("TestSleep");
   t1.start();
     
    for(int i=0 ; i <10; i++)
             System.out.println("I am Main Thread");
   }
 }
 
 class MyThread2 extends Thread {
  
     MyThread2(String s) {
     super(s);
     }
     
  public void run() {
    for(int i = 1; i <= 10; i++) {
     System.out.println("I am "+ getName());
      try {
      sleep(1000); //暂停,每一秒输出一次
      }catch (InterruptedException e) {
      return;
     }
     }
   }
  }
注意:
1、线程睡眠是帮助所有线程获得运行机会的最好方法。
2、线程睡眠到期自动苏醒,并返回到可运行状态,不是运行状态。 sleep()中指定的时间是线程不会运行的最短时间。因此,sleep()方法不能保证该线程睡眠到期后就开始执行。
3、sleep()是静态方法,只能控制当前正在运行的线程。
实例二:一个计数器,计数到100,在每个数字之间暂停1秒,每隔10个数字输出一个字符串
public class MyThread extends Thread {
   public void run() {
       for (int i = 0; i < 100; i++) {
           if ((i) % 10 == 0) {
               System.out.println("-------" + i);
           }
           System.out.print(i);
           try {
               Thread.sleep(1000);
               System.out.print("   线程睡眠1秒!\n");
           } catch (InterruptedException e) {
               e.printStackTrace();
           }
       }
   }
   public static void main(String[] args) {
       new MyThread().start();
    }
}

今天关于Python time.sleep的上限?的讲解已经结束,谢谢您的阅读,如果想了解更多关于C语言中sleep()的用法、datetime.strptime()的Python时区'%z'指令不可用、iphone – sleep(),usleep()和[NSThread sleepForTimeInterval:]之间有什么区别?、java中sleep()的用法的相关知识,请在本站搜索。

本文标签: