> Hi all, > > Considering the consistency of `JavaThread` and other threads, such as > WorkerThread and CompilerThread, `JavaThread` could use a method named `cast` > to replace the method `Thread::as_Java_thread()`. It can reduce the Thread's > knowledge about the subtypes. > > This patch removes two methods, `JavaThread* Thread::as_Java_thread()` and > `const JavaThread* Thread::as_Java_thread() const`, of the class `Thread` and > adds two static methods, `JavaThread* cast(Thread* t)` and `const JavaThread* > cast(const Thread* t)`, to the class `JavaThread`. Correspondingly, the code > of the method `JavaThread::current()` need to be adjusted and many places > where the method `Thread::as_Java_thread()` is used need to use > `JavaThread::cast` instead. > > Test: > tier1 passed locally. > > Thanks for taking the time to review. > > Best Regards, > -- Guoxiong
Guoxiong Li has updated the pull request incrementally with one additional commit since the last revision: Remove inline specifier ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/4546/files - new: https://git.openjdk.java.net/jdk/pull/4546/files/259730be..c0347b6c Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4546&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4546&range=01-02 Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod Patch: https://git.openjdk.java.net/jdk/pull/4546.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/4546/head:pull/4546 PR: https://git.openjdk.java.net/jdk/pull/4546