class VM_EmptyOperation : public VM_Operation { public: virtualvoid doit() final {} virtualbool skip_thread_oop_barriers() const final { // Neither the doit function nor the safepoint // cleanup tasks read oops in the Java threads. returntrue;
}
};
class VM_Halt: public VM_EmptyOperation { public:
VMOp_Type type() const { return VMOp_Halt; }
};
class VM_SafepointALot: public VM_EmptyOperation { public:
VMOp_Type type() const { return VMOp_SafepointALot; }
};
class VM_Cleanup: public VM_EmptyOperation { public:
VMOp_Type type() const { return VMOp_Cleanup; }
};
// empty vm op, evaluated just to force a safepoint class VM_ForceSafepoint: public VM_EmptyOperation { public:
VMOp_Type type() const { return VMOp_ForceSafepoint; }
};
// empty vm op, when forcing a safepoint due to inline cache buffers being full class VM_ICBufferFull: public VM_EmptyOperation { public:
VMOp_Type type() const { return VMOp_ICBufferFull; }
};
// Base class for invoking parts of a gtest in a safepoint. // Derived classes provide the doit method. // Typically also need to transition the gtest thread from native to VM. class VM_GTestExecuteAtSafepoint: public VM_Operation { public:
VMOp_Type type() const { return VMOp_GTestExecuteAtSafepoint; }
protected:
VM_GTestExecuteAtSafepoint() {}
};
class VM_CleanClassLoaderDataMetaspaces : public VM_Operation { public:
VM_CleanClassLoaderDataMetaspaces() {}
VMOp_Type type() const { return VMOp_CleanClassLoaderDataMetaspaces; } void doit();
};
// Deopt helper that can deoptimize frames in threads other than the // current thread. Only used through Deoptimization::deoptimize_frame. class VM_DeoptimizeFrame: public VM_Operation { friendclass Deoptimization;
private:
JavaThread* _thread;
intptr_t* _id; int _reason;
VM_DeoptimizeFrame(JavaThread* thread, intptr_t* id, int reason);
class DeadlockCycle; class VM_FindDeadlocks: public VM_Operation { private: bool _concurrent_locks;
DeadlockCycle* _deadlocks;
outputStream* _out;
ThreadsListSetter _setter; // Helper to set hazard ptr in the originating thread // which protects the JavaThreads in _deadlocks.
class ThreadDumpResult; class ThreadSnapshot; class ThreadConcurrentLocks;
class VM_ThreadDump : public VM_Operation { private:
ThreadDumpResult* _result; int _num_threads;
GrowableArray<instanceHandle>* _threads; int _max_depth; bool _with_locked_monitors; bool _with_locked_synchronizers;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.