os
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Thư viện này hiện đang phục vụ mục đích cung cấp thông tin về thời gian hệ thống dưới định dạng UTC.Nó đã bị hộp cát nặng nề từ thư viện Lua tiêu chuẩn os và không cho phép bạn thực hiện bất kỳ hoạt động thay đổi hệ thống nào.
Tóm Tắt
Chức Năng
Trả về thời gian trôi qua trong giây kể từ một điểm cơ bản ngẫu nhiên với độ chính xác dưới một phần triệu giây.
Định dạng chuỗi được cho với thông tin ngày/thời gian dựa trên thời gian được cho.
Trả về số giây từ một lần này sang lần khác.
Trả về bao nhiêu giây đã trôi qua kể từ thời điểm Unix (1 tháng 1 năm 1970, 00:00:00) trong thời gian UTC hiện tại.
Chức Năng
clock
Trả về thời gian trôi qua trong giây kể từ một điểm cơ bản ngẫu nhiên với độ chính xác dưới một phần triệu giây.Chức năng này hữu ích để so sánh thời lượng giữa hai sự kiện xảy ra trên cùng một máy tính, và là lựa chọn tốt nhất để đánh giá.
Không giống như với các chức năng như os.time() hoặc DateTime.now(), điều chỉnh cho đồng hồ hệ thống (như bởi người dùng hoặc NTP) không gây ra thời gian nhảy về phía trước hoặc phía sau.
-- Ghi lại thời gian ban đầu:local startTime = os.clock()-- Làm điều gì đó bạn muốn đo hiệu suất của:local a, b = 0, 1for _ = 1, 5000000 doa, b = b, aend-- Đo lượng thời gian mất:local deltaTime = os.clock() - startTimeprint("Elapsed time: " .. deltaTime)--> Elapsed time: 0.044425600033719 (actual number may vary)
Lợi Nhuận
date
Định dạng dữ liệu được cung cấp formatString với thông tin ngày/thời gian dựa trên thời gian được cung cấp, hoặc nếu không được cung cấp, giá trị được trả bởi os.time() .
Chức năng này nên tránh trong công việc mới. Thay vào đó, hãy sử dụng API DateTime, hỗ trợ định dạng địa phương.
Các đặc tính sau (dựa trên chức năng strftime của C) được hỗ trợ:
<th>Ý nghĩa</th><th>Ví dụ <sup>†</sup></th></tr></thead><tbody><tr><td>%a</td><td>Tên ngày làm việc ngắn *</td><td>Thứ Hai</td></tr><tr><td>%A</td><td>Tên ngày làm việc đầy đủ *</td><td>Thứ hai</td></tr><tr><td>%b</td><td>Tên tháng ngắn *</td><td>Tháng 2</td></tr><tr><td>%B</td><td>Tên tháng đầy đủ *</td><td>Tháng Hai</td></tr><tr><td>%c</td><td>Ngày và thời gian *</td><td>Thứ Hai 12 2 14:14:35 2024</td></tr><tr><td>%d</td><td>Ngày của tháng</td><td>12</td></tr><tr><td>%H</td><td>Giờ, sử dụng đồng hồ 24 giờ</td><td>14</td></tr><tr><td>%I</td><td>Giờ, sử dụng đồng hồ 12 giờ</td><td>02</td></tr><tr><td>%j</td><td>Ngày trong năm</td><td>043</td></tr><tr><td>%m</td><td>Tháng</td><td>02</td></tr><tr><td>%M</td><td>Phút</td><td>14</td></tr><tr><td>%p</td><td>Hoặc "AM" hoặc "PM"</td><td>PM</td></tr><tr><td>%S</td><td>Thứ hai</td><td>35</td></tr><tr><td>%U</td><td>Số tuần (Chủ nhật đầu tiên là ngày đầu tiên của tuần một)</td><td>06</td></tr><tr><td>%w</td><td>Ngày làm việc</td><td>1</td></tr><tr><td>%W</td><td>Số tuần (thứ hai đầu tiên là ngày đầu tiên của tuần một)</td><td>07</td></tr><tr><td>%x</td><td>Ngày *</td><td>02/12/24</td></tr><tr><td>%X</td><td>Thời gian *</td><td>14:14:35</td></tr><tr><td>%y</td><td>Năm hai chữ số</td><td>24</td></tr><tr><td>%Y</td><td>Cả năm</td><td>2024</td></tr><tr><td>%z</td><td>ISO 8601 bị trừ đi từ UTC trong khu vực giờ (1 phút = 1, 1 giờ = 100)</td><td>-0800</td></tr><tr><td>%Z</td><td>Tên hoặc tên viết tắt của vùng thời gian *</td><td>Thời gian PST</td></tr><tr><td>%%</td><td>Nhân tố %</td><td>%</td></tr></tbody>
Người xác định |
---|
:* Giá trị này có thể thay đổi tùy thuộc vào vị trí hiện tại.
† Ví dụ được cung cấp là vào ngày 12 tháng 2 năm 2024 (Thứ Hai) lúc 2:14:35 PM (14:14:35), chạy bằng cách sử dụng địa phương "en-us" trong Thời gian chuẩn Thái Bình Dương (PST).
Nếu formatString được cung cấp chính xác "*t" (thời gian địa phương) hoặc "!*t" (thời gian UTC), chức năng này thay vào đó trả về một từ điển chứa các thành phần sau, mà bình thường có sẵn trong các ngôn ngữ đặc trưng ở trên.
<th>Loại</th><th>Mô tả</th></tr></thead><tbody><tr><td>năm</td><td>intngôn ngữenglish:int</td><td>Một số nguyên tố mô tả năm hiện tại của Thời đại hiện tại ( ví dụ 2017)</td></tr><tr><td>tháng</td><td>intngôn ngữenglish:int</td><td>Một số nguyên từ 1 đến 12 (bắt đầu từ tháng 1) mô tả tháng hiện tại.</td></tr><tr><td>ngày</td><td>intngôn ngữenglish:int</td><td>Một số nguyên từ 1 đến 7 (bắt đầu từ Chủ nhật) mô tả ngày trong tuần hiện tại.</td></tr><tr><td>ngày yday</td><td>intngôn ngữenglish:int</td><td>Một số nguyên từ 1 đến 366 mô tả số ngày chúng ta đang vào năm.Có thể có 366 ngày nếu đó là năm nhảy.</td></tr><tr><td>ngày</td><td>intngôn ngữenglish:int</td><td>Một số nguyên từ 1 đến 31 mô tả ngày hiện tại của tháng.</td></tr><tr><td>giờ</td><td>intngôn ngữenglish:int</td><td>Một số nguyên từ 1 đến 24 mô tả giờ hiện tại của ngày.</td></tr><tr><td>phút</td><td>intngôn ngữenglish:int</td><td>Một số nguyên từ 0 đến 59 mô tả phút hiện tại của giờ.</td></tr><tr><td>giây</td><td>intngôn ngữenglish:int</td><td>Một số nguyên từ 0 đến 60 mô tả giây hiện tại của giờ.(60 vì chức năng được mô tả để chỉ ra giây nhảy, nhưng trong thực tế có lẽ nó không).</td></tr><tr><td>là dst</td><td>bool</td><td>Một boolean mô tả xem liệu thời gian tiết kiệm ánh sáng ban ngày hiện đang hoạt động.</td></tr></tbody>
Trường |
---|
Lợi Nhuận
time
Trả về bao nhiêu giây đã trôi qua kể từ thời điểm Unix (1 tháng 1 năm 1970, 00:00:00), trong thời gian UTC hiện tại.Nếu cung cấp một bảng được định dạng tương tự như được trả về bởi os.date() , nó sẽ trả về số giây kể từ thời điểm đó thay vào đó.
Lưu ý rằng thời gian trả về sử dụng đồng hồ địa phương của thiết bị.Hầu hết các hệ điều hành tự động đồng bộ thời gian địa phương của họ với máy chủ thời gian trực tuyến, vì vậy điều này nên nằm trong vài trăm mili giây.Tuy nhiên, người dùng có thể dễ dàng vô hiệu hóa hành vi đồng bộ và đặt thời gian hệ thống thành bất cứ thứ gì họ muốn; đối với thời gian đồng bộ giữa khách hàng và máy chủ, hãy sử dụng Workspace:GetServerTimeNow() thay vì đó.
Chức năng này nên tránh trong công việc mới. Thay vào đó, hãy sử dụng API DateTime, hỗ trợ định dạng địa phương.
Khi bạn cần chính xác đo thời gian trôi qua giữa hai điểm trong thời gian, như khi kiểm tra hiệu hiệu lực, hãy sử dụng os.clock() thay vào đó.