- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试使用 Noda Time Jon Skeet(和其他人)的框架。
我现在正在尝试存储当前(即时)。 Instant 是由一个长的 ticks 创建的,但是当前的 Ticks 数是多少?
是吗:
Instant now = new Instant(DateTime.Now.ToUniversalTime().Ticks);
和还是?
Instant now = Instant.FromDateTimeUtc(DateTime.Now.ToUniversalTime());
它们是等价的吗,我这样做对吗?
PS,如果 Jon 的回答是这个 - 我想提议一个 Instant.Now 属性。
PS2 我知道标题包含标签,但它不会让我有一个简短的“Instant.Now”标题。
最佳答案
我做了一些研究,NodaTime 的方法似乎是根据 clock 获取现在时刻.
如果您想使用系统时钟获取当前时间,只需使用 SystemClock.Instance.GetCurrentInstant()
。
但是,与其在代码中直接使用 SystemClock.Instance
,不如在时间感知类中注入(inject) IClock
依赖项。
这将使您能够:
SystemClock.Instance
,因此代码将使用正确的时间IClock
的假实现,以允许您根据需要调整时间以测试各种场景(如时间的流逝)。有一个 NodaTime.Testing 项目提供了这样一个类,称为 FakeClock
。我觉得这很有用。我认为像 new Instant()
或 Instant.Now
这样的东西返回当前时间会更容易在幕后对 SystemClock
的使用进行硬编码,因此缺少 NodaTime 提供的测试优势。
有关使用 NodaTime 进行单元测试的更多信息,请参阅 this link .
关于您的代码示例:它们不等同。
Instant.FromDateTimeUtc(DateTime.Now.ToUniversalTime())
确实会以 UTC 格式为您提供当前时刻。new Instant(DateTime.Now.ToUniversalTime().Ticks)
会给你一个遥远 future 的错误日期,因为 BCL 的 DateTime.Ticks
表示自 1/1/0001
以来的刻度数,NodaTime 的 Instant.Ticks
表示自 1/1/1970
以来的刻度数(请参阅备注 here)。关于c# - NodaTime 的 Instant.Now,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14531627/
例如,如果一个 Instant 在其他两个 Instant 的开始和结束范围内,您想在 Kotlin 中检查,您可以简单地执行以下操作: import java.time.Instant val s
Google 即搜即得是一种新的搜索增强功能,可在您键入时显示结果。在 the information page for Google Instant ,它说“15 项新技术有助于 Google 即搜
我定义了以下模型 public class ItemDetail { private final String name; private final String id; p
游戏已启动,我收到了用户的状态,一切就绪。我正在尝试构建一个问答游戏。我正在从远程服务器获取所有信息,其中包括基于问题的图像 Assets 。我可以获取远程数据,但无法显示图像。看来 facebook
我正在尝试生成 java.time.Instant 的实例用于基于属性的测试,并使用Temporal.range几乎适用于所有 Temporal我尝试过的子类- 除了Instant ,这似乎没有提供有
时间戳将存储在数据库中。确定一个名为“b”的时间戳是否是另一个名为“a”的时间戳的后一天的解决方案是什么? 时区将作为参数提供。 例如,考虑: Instant a = Instant.ofEpochS
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 8 年前。 Improve
我想权衡我购买其中一个或两个订阅的决定。我想得到一些数据来支持我的决定。是否可以编写一个程序来比较库?可以从 netflix 和 amazon 获得 API 吗? 最佳答案 除了 scaba 的回答之
我有一个 Instant (org.joda.time.Instant) 的实例,我在一些 api 响应中得到它。我有另一个来自 (java.time.Instant) 的实例,这是我从其他调用中获得
我正在尝试将 org.thirden.bp.LocalDate 转换为 java.util.Date,并且收到问题标题中提到的错误。 我使用以下进行转换: Date.from(currentDate.
对于我的每个用户,我存储一个 tzid我将其转换为 DateTimeZone持有有关其本地时区的信息。 我想在本地时间每天早上 8 点向用户发送一封电子邮件;如果上午 8 点由于某种原因(例如夏令时类
本文将提供如何在 Java LocalDateTime 和 Instant 之间进行转换。 LocalDateTime 表示没有时区的日期时间,例如 2019-10-25T12:15:30,而 Ins
这个问题在这里已经有了答案: 10年前关闭。 Possible Duplicate: How does Google Instant work? 我们经常使用谷歌搜索任何内容,但是当我们在谷歌引擎的文
我有一个设计类似于 myspace/facebook 类型社区的社交网站,我在 LAMP 设置上使用 php/mysql。 我一直想拥有自己的即时通讯工具,可以在用户的 PC 上运行,类似于 AI
我正在为我的网站开发私有(private)消息传递功能, 有没有办法从服务器获取用户收到新消息的推送通知? 我知道的唯一技术是通过 ajax 不断轮询服务器以查看是否有新消息,并在需要时重新加载信使窗
我越来越了解NodaTime并且非常喜欢它。但是我还不太了解! 给定诸如“ 2014-04-08T09:30:18Z”的值,将这样的字符串解析为NodaTime Instant所需的步骤是什么? 谢谢
这个问题已经有答案了: How to unify date format using DateTimeFormatter (4 个回答) What is the Standard way to Par
我正在尝试根据 B.C.E. 创建一个 Instant。公历年。 这是我目前所拥有的: Instant.FromDateTimeOffset(new DateTimeOffset(-1000, 10,
我已尝试获取特定时区的当前实例,但它没有按预期工作。关于如何执行此操作的任何想法? 这是我做的: Instant.now(Clock.system(ZoneId.of("America/Los_Ang
这个问题可能与另一个问题类似: HTML Comparing 2 Dates with Javascript 但我不想使用按钮,只需让它即时即可。 我有 2 个类型为 date 的输入,我想比较它们。
我是一名优秀的程序员,十分优秀!