ICorProfilerFunctionControl::SetCodegenFlags — Metoda
Ustawia co najmniej jedną flagę z wyliczenia COR_PRF_CODEGEN_FLAGS w celu sterowania generowaniem kodu dla funkcji skompilowanej just in time (JIT).
Składnia
HRESULT SetCodegenFlags(
[in] DWORD flags);
Parametry
flags
[in] Co najmniej jedna flaga z wyliczenia COR_PRF_CODEGEN_FLAGS .
Uwagi
Profiler uzyskuje wystąpienie tego interfejsu za pośrednictwem wywołania zwrotnego ICorProfilerCallback4::GetReJITParameters . SetCodegenFlags
umożliwia profilerowi kontrolowanie generowania kodu dla funkcji ponownie skompilowanej. Podobnie jak w przypadku wszystkich innych parametrów ponownej kompilacji trybu JIT flagi generowania kodu mają zastosowanie do wszystkich wystąpień funkcji.
Kompilator JIT uwzględnia te flagi kompilacji wraz z innymi flagami określonymi przez inne źródła podczas kompilowania funkcji. Inne źródła obejmują debuger, flagi globalne ustawione przez profilera podczas uruchamiania przy użyciu metody ICorProfilerInfo::SetEventMask (z wartościami COR_PRF_DISABLE_INLINING
i COR_PRF_DISABLE_OPTIMIZATIONS
) oraz wywołania zwrotnego ICorProfilerCallback::JITInlining profilera. Kompilator JIT ma pierwszeństwo przed źródłem, które żąda najmniejszej ilości optymalizacji. Jeśli na przykład profiler określa COR_PRF_DISABLE_INLINING
podczas uruchamiania, ale nie określa COR_PRF_CODEGEN_DISABLE_INLINING
w wywołaniu zwrotnym ICorProfilerFunctionControl::SetCodegenFlags wywołanie zwrotne, tworzenie inlin jest nadal wyłączone. Podobnie, jeśli profiler nie określi COR_PRF_CODEGEN_DISABLE_INLINING
w elemecie , ale wyłącza tworzenie w trybie inliningu przy użyciu wywołania zwrotnego ICorProfilerCallback::JITInlining, oznaczanie jest SetCodegenFlags
wyłączone.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorProf.idl, CorProf.h
Biblioteki: CorGuids.lib
wersje .NET Framework: dostępne od wersji 4.5