[runtime] Add some low level locks to image sets to reduce contention and the usage...
[mono.git] / mono / metadata / mono-perfcounters.c
index e30c2047cc2a724236549b659b0ecc913733e434..ec72516a2b394f8fc4db25163ad9a6354000bbf7 100644 (file)
@@ -6,6 +6,7 @@
  * Author: Paolo Molaro (lupus@ximian.com)
  *
  * Copyright 2008-2009 Novell, Inc (http://www.novell.com)
+ * 2011 Xamarin, Inc
  */
 
 #include "config.h"
@@ -37,6 +38,7 @@
 #include "utils/mono-proclib.h"
 #include "utils/mono-networkinterfaces.h"
 #include "utils/mono-error-internals.h"
+#include "utils/atomic.h"
 #include <mono/io-layer/io-layer.h>
 
 /* map of CounterSample.cs */
@@ -51,6 +53,7 @@ struct _MonoCounterSample {
        int counterType;
 };
 
+#ifndef DISABLE_PERFCOUNTERS
 /* map of PerformanceCounterType.cs */
 enum {
        NumberOfItemsHEX32=0x00000000,
@@ -1688,4 +1691,77 @@ mono_perfcounter_instance_names (MonoString *category, MonoString *machine)
                return mono_array_new (mono_domain_get (), mono_get_string_class (), 0);
        }
 }
+#else
+void*
+mono_perfcounter_get_impl (MonoString* category, MonoString* counter, MonoString* instance, MonoString* machine, int *type, MonoBoolean *custom)
+{
+       g_assert_not_reached ();
+}
+
+MonoBoolean
+mono_perfcounter_get_sample (void *impl, MonoBoolean only_value, MonoCounterSample *sample)
+{
+       g_assert_not_reached ();
+}
+
+gint64
+mono_perfcounter_update_value (void *impl, MonoBoolean do_incr, gint64 value)
+{
+       g_assert_not_reached ();
+}
+
+void
+mono_perfcounter_free_data (void *impl)
+{
+       g_assert_not_reached ();
+}
+
+/* Category icalls */
+MonoBoolean
+mono_perfcounter_category_del (MonoString *name)
+{
+       g_assert_not_reached ();
+}
+
+MonoString*
+mono_perfcounter_category_help (MonoString *category, MonoString *machine)
+{
+       g_assert_not_reached ();
+}
 
+MonoBoolean
+mono_perfcounter_category_exists (MonoString *counter, MonoString *category, MonoString *machine)
+{
+       g_assert_not_reached ();
+}
+
+MonoBoolean
+mono_perfcounter_create (MonoString *category, MonoString *help, int type, MonoArray *items)
+{
+       g_assert_not_reached ();
+}
+
+int
+mono_perfcounter_instance_exists (MonoString *instance, MonoString *category, MonoString *machine)
+{
+       g_assert_not_reached ();
+}
+
+MonoArray*
+mono_perfcounter_category_names (MonoString *machine)
+{
+       g_assert_not_reached ();
+}
+
+MonoArray*
+mono_perfcounter_counter_names (MonoString *category, MonoString *machine)
+{
+       g_assert_not_reached ();
+}
+
+MonoArray*
+mono_perfcounter_instance_names (MonoString *category, MonoString *machine)
+{
+       g_assert_not_reached ();
+}
+#endif