RenderScript 时间函数和类型

概览

以下函数可用于获取当前时钟时间和当前系统运行时间。不建议在内核内部调用这些函数。

摘要

类型
rs_time_t 自 1970 年 1 月 1 日以来的秒数
rs_tm 日期和时间结构
函数
rsGetDt 自上次调用以来的经过时间
rsLocaltime 转换为本地时间
rsTime 自 1970 年 1 月 1 日以来的秒数
rsUptimeMillis 系统运行时间(毫秒)
rsUptimeNanos 系统运行时间(纳秒)

类型

rs_time_t :自 1970 年 1 月 1 日以来的秒数

类型定义:int     编译 32 位时。

类型定义:long     编译 64 位时。

日历时间,解释为自纪元(1970 年 1 月 1 日 00:00:00 协调世界时 (UTC))以来经过的秒数。

rs_tm :日期和时间结构

具有以下字段的结构体:     

int tm_sec分钟后的秒数。范围为 0 到 59,闰秒时可能高达 60。
int tm_min小时后的分钟数。范围为 0 到 59。
int tm_hour午夜后的小时数。范围为 0 到 23。
int tm_mday月份中的日期。范围为 1 到 31。
int tm_mon自一月以来的月数。范围为 0 到 11。
int tm_year自 1900 年以来的年数。
int tm_wday自星期日以来的天数。范围为 0 到 6。
int tm_yday自 1 月 1 日以来的天数。范围为 0 到 365。
int tm_isdst表示夏令时是否生效的标志。如果生效,值为正数;如果不生效,值为零;如果信息不可用,值为负数。

分解后的时间组件的数据结构。

函数

rsGetDt :自上次调用以来的经过时间

float rsGetDt();
返回
时间(秒)。

返回此脚本上次调用此函数以来经过的秒数。

rsLocaltime :转换为本地时间

rs_tm* rsLocaltime(rs_tm* local, const rs_time_t* timer);
参数
local指向存储本地时间的时间结构体指针。
timer输入时间,表示自 1970 年 1 月 1 日以来的秒数。
返回
指向输出本地时间的指针,即与参数 local 相同的值。

将 timer 指定的时间转换为 rs_tm 结构体,该结构体提供年、月、时等信息。此值存储在 *local。

此函数返回作为第一个参数传入的相同指针。如果 local 参数为 NULL,则此函数不执行任何操作并返回 NULL。

rsTime :自 1970 年 1 月 1 日以来的秒数

rs_time_t rsTime(rs_time_t* timer);
参数
timer用于存储返回的日历时间的位置。
返回
自纪元以来的秒数,如果出错则为 -1。

返回自纪元(1970 年 1 月 1 日 00:00:00 UTC)以来经过的秒数。

如果 timer 非 NULL,结果也存储在此变量指向的内存中。

rsUptimeMillis :系统运行时间(毫秒)

int64_t rsUptimeMillis();
返回
系统运行时间(毫秒)。

返回当前系统时钟(运行时间)的毫秒数。

rsUptimeNanos :系统运行时间(纳秒)

int64_t rsUptimeNanos();
返回
系统运行时间(纳秒)。

返回当前系统时钟(运行时间)的纳秒数。

此调用返回的值的粒度可能远大于纳秒。