2009-06-05 55 views

Trả lời

45

tick là đơn vị chi tiết cho các loại giá trị .NET DateTimeTimeSpan.

Nó có chuyển đổi phổ biến sau đây:

1 tick = 100 nanoseconds 
     = 0.1 microseconds 
     = 0.0001 milliseconds 
     = 0.0000001 seconds 
+2

Bạn đã trả lời câu hỏi của riêng mình một phút sau khi đăng câu hỏi? –

+33

uh, StackOverflow khuyến khích loại điều này trong Câu hỏi thường gặp, không bỏ phiếu cho anh ta vì điều đó. xem: http://stackoverflow.com/questions/18557/how-does-stackoverflow-work-the-unofficial-faq#119658 –

+4

Về mặt toán học, các biểu thức này không có ý nghĩa. 1 đánh dấu ** là ** 100 nano giây. Ngược lại, biểu thức đầu tiên của bạn cho biết * '1 tick' ** nhân với **' 1E + 2' bằng '100 ns' *, điều này không chính xác. Chỉ khi bạn đọc tất cả 4 biểu thức, bạn nhận ra rằng tất cả chúng đều không chính xác. Thực sự, '1 đánh dấu = 100 ns' sẽ là đủ, và thực sự sẽ là câu trả lời tốt nhất mà bạn có thể đã cung cấp. Mọi người biết cách chuyển đổi giây thành nano giây. – Groo

66

Mặc dù hiện một đánh dấu là 100 nano giây, tốt nhất là không để dựa vào điều này như một tuyệt đối. Thay vào đó, hãy sử dụng 'TimeSpan.TicksPerSecond' (hoặc bất kỳ giá trị thành viên TicksPerXxx nào khác)

+7

Điều này đúng. Không mã hóa những mã này trong mã của bạn. Tuy nhiên, chúng là tuyệt đối và sẽ không bị thay đổi bởi Microsoft. Lý do cho bài đăng này là đôi khi người ta cần phải làm toán này trên máy tính và tôi muốn làm cho biểu đồ này có sẵn. –

+5

+1 Không biết 'TimeSpan.TicksPerSecond' tồn tại –

3

Lưu ý rằng, mặc dù độ phân giải lý thuyết của DateTime.Now khá cao, độ phân giải - tức là tần suất cập nhật - thấp hơn một chút .

Rõ ràng, trên các hệ thống hiện đại, DateTime.Now có độ phân giải 10 mili giây ... Xem msdn.microsoft.com/en-us/library/system.datetime.now.aspx

10

Để báo MSDN:

Các đơn vị nhỏ nhất thời gian là đánh dấu, mà là bằng 100 nano giây.

Đo lường không thành công.

Các vấn đề liên quan