有没有办法获取Ada中的当前日期?
我正在寻找与C#DateTime.Now()
相等的返回持续时间。
我有一个事件T
,我想确定T
是否在30秒前开始。
答案 0 :(得分:5)
您可能想看看软件包Clock
中的Ada.Real_Time
函数(另请参见ARM D.8)。
答案 1 :(得分:4)
在Ada中执行此操作的方法是使用Ada.Calendar
,它提供了一个Clock
函数,用于返回当前的Time
:
declare
use type Ada.Calendar.Time;
Now : constant Ada.Calendar.Time := Ada.Calendar.Clock;
Interval : constant Duration := 30.0;
begin
if Now > Start_Time_Of_T + Interval then
Ada.Text_IO.Put_Line("Event T took too long");
end if;
end;
根据所需的精度,您可以查看Ada.Real_Time
软件包
代替。 (用法类似,但是需要从Duration
转换为Time_Span
)