X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fsgen%2Fsgen-pinning.c;h=0e711d1aa15a265b4fa466c00a595c884568a9ef;hb=fe1eeb07241018430cc63097f1dd6b9c69f40cf2;hp=be803daffa7a53f3d09596b1a0b51c4261620033;hpb=3b2913ca03f284906f55606c9b36540890b7572a;p=mono.git diff --git a/mono/sgen/sgen-pinning.c b/mono/sgen/sgen-pinning.c index be803daffa7..0e711d1aa15 100644 --- a/mono/sgen/sgen-pinning.c +++ b/mono/sgen/sgen-pinning.c @@ -1,5 +1,6 @@ -/* - * sgen-pinning.c: The pin queue. +/** + * \file + * The pin queue. * * Copyright 2001-2003 Ximian, Inc * Copyright 2003-2010 Novell, Inc. @@ -40,9 +41,14 @@ sgen_pinning_init (void) void sgen_init_pinning (void) { - mono_os_mutex_lock (&pin_queue_mutex); memset (pin_hash_filter, 0, sizeof (pin_hash_filter)); pin_queue.mem_type = INTERNAL_MEM_PIN_QUEUE; +} + +void +sgen_init_pinning_for_conc (void) +{ + mono_os_mutex_lock (&pin_queue_mutex); sgen_pointer_queue_clear (&pin_queue_objs); } @@ -51,6 +57,11 @@ sgen_finish_pinning (void) { last_num_pinned = pin_queue.next_slot; sgen_pointer_queue_clear (&pin_queue); +} + +void +sgen_finish_pinning_for_conc (void) +{ mono_os_mutex_unlock (&pin_queue_mutex); }