src/share/vm/runtime/sweeper.hpp

changeset 1999
2a47bd84841f
parent 1970
ff38d05ea86f
child 2314
f95d63e2154a
     1.1 --- a/src/share/vm/runtime/sweeper.hpp	Wed Jul 07 12:40:01 2010 -0700
     1.2 +++ b/src/share/vm/runtime/sweeper.hpp	Thu Jul 08 14:29:44 2010 -0700
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 1997, 2005, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -31,12 +31,13 @@
    1.11    static long      _traversals;   // Stack traversal count
    1.12    static nmethod*  _current;      // Current nmethod
    1.13    static int       _seen;         // Nof. nmethod we have currently processed in current pass of CodeCache
    1.14 -  static int       _invocations;  // No. of invocations left until we are completed with this pass
    1.15 +
    1.16 +  static volatile int      _invocations;   // No. of invocations left until we are completed with this pass
    1.17 +  static volatile int      _sweep_started; // Flag to control conc sweeper
    1.18  
    1.19    static bool      _rescan;          // Indicates that we should do a full rescan of the
    1.20                                       // of the code cache looking for work to do.
    1.21    static bool      _do_sweep;        // Flag to skip the conc sweep if no stack scan happened
    1.22 -  static jint      _sweep_started;   // Flag to control conc sweeper
    1.23    static int       _locked_seen;     // Number of locked nmethods encountered during the scan
    1.24    static int       _not_entrant_seen_on_stack; // Number of not entrant nmethod were are still on stack
    1.25  
    1.26 @@ -47,6 +48,9 @@
    1.27    static long      _was_full_traversal;   // trav number at last emergency unloading
    1.28  
    1.29    static void process_nmethod(nmethod *nm);
    1.30 +
    1.31 +  static void log_sweep(const char* msg, const char* format = NULL, ...);
    1.32 +
    1.33   public:
    1.34    static long traversal_count() { return _traversals; }
    1.35  

mercurial