2011-06-28 33 views
13

Lúc đầu, tôi muốn cho bạn biết rằng câu hỏi này không liên quan đến What is native implementation in Java. Tôi có nhiều thông tin hữu ích từ chuỗi đó.Mã nguồn của các phương thức gốc có sẵn không?

Tôi muốn biết rằng các mã của bản triển khai gốc có sẵn không? Tôi có mã nguồn jdk nhưng tôi không thể tìm thấy mã gốc cho System.currentTimeMillis hoặc Runtime.getRuntime().availableProcessors() hoặc phương pháp gốc khác.

+2

Bạn có thể tải xuống nguồn cho toàn bộ OpenJDK và mở nó làm dự án khác nếu bạn có bộ nhớ (Ít nhất là tôi làm.;) –

+1

@Peter Lawrey bạn đang giới thiệu http://download.java.net/openjdk/jdk6 /? –

+2

Có gói được 4 tháng tuổi và bạn cũng có thể tải xuống phiên bản mới nhất từ ​​kiểm soát nguồn nhưng không quan trọng. –

Trả lời

11

Có, hãy xem os::javaTimeMillis trong /src/os/solaris/vm/os_solaris.cpp để xem ví dụ về Solaris.

Có một vài lớp giấy gói để đạt được điều đó, mặc dù thấy JVM_CurrentTimeMillis trong /src/share/vm/prims/jvm.cpp

2

Bởi vì các phương pháp cơ bản là nội tại với hệ điều hành bạn đang chạy Java trên, bạn sẽ không tìm thấy mã nguồn của họ trong tài liệu JDK . Tôi cho rằng bạn cần phải tìm ra chính xác quy trình nào được gọi trên nền tảng của bạn và nếu mã nguồn có sẵn cho các nền tảng đó (tùy thuộc vào hệ điều hành của bạn).

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