如何获取当前日期?

时间:2019-06-17 13:25:11

标签: ada duration

有没有办法获取Ada中的当前日期?

我正在寻找与C#DateTime.Now()相等的返回持续时间。

我有一个事件T,我想确定T是否在30秒前开始。

2 个答案:

答案 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