<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./mutex_files/filelist.xml">
<title>Mutex Documentation</title>
<!--[if gte mso 9]><xml>
 <o:DocumentProperties>
  <o:Author>Helena Shih</o:Author>
  <o:Template>Normal</o:Template>
  <o:LastAuthor>Helena Shih</o:LastAuthor>
  <o:Revision>2</o:Revision>
  <o:TotalTime>0</o:TotalTime>
  <o:Created>2000-01-15T02:23:00Z</o:Created>
  <o:LastSaved>2000-01-15T02:23:00Z</o:LastSaved>
  <o:Pages>2</o:Pages>
  <o:Words>522</o:Words>
  <o:Characters>2979</o:Characters>
  <o:Company>IBM</o:Company>
  <o:Lines>24</o:Lines>
  <o:Paragraphs>5</o:Paragraphs>
  <o:CharactersWithSpaces>3658</o:CharactersWithSpaces>
  <o:Version>9.2720</o:Version>
 </o:DocumentProperties>
</xml><![endif]-->
<style>
<!--
 /* Font Definitions */
@font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;
	mso-font-charset:2;
	mso-generic-font-family:auto;
	mso-font-pitch:variable;
	mso-font-signature:0 268435456 0 0 -2147483648 0;}
 /* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-parent:"";
	margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
p
	{font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.25in 1.0in 1.25in;
	mso-header-margin:.5in;
	mso-footer-margin:.5in;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}
 /* List Definitions */
@list l0
	{mso-list-id:1299845606;
	mso-list-type:hybrid;
	mso-list-template-ids:-1849547252 -302606876 -817858888 -819169718 -1866726332 223118424 -996776518 -314158042 -1140712398 101464222;}
@list l0:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1"/>
 </o:shapelayout></xml><![endif]-->
</head>

<body bgcolor=white lang=EN-US style='tab-interval:.5in'>

<div class=Section1>

<h1>International Components for Unicode Synchronization Issues</h1>

<h3>Introduction</h3>

<p>There are a number of functions in the IBM's Classes for Unicode that need
to access or allocate global or static data. For example, there is a global
cache of Collation rules, which ensures that we do not need to load collation
data from a file each time that a new Collator object is created. The first
time a given Collator is loaded it is stored in the cache, and subsequent
accesses are extremely fast. </p>

<p>In a single-threaded environment, this is all straightforward. However, in a
multithreaded application there are synchronization issues to deal with. For
example, the collation caching mechanism needs to be protected from
simultaneous access by multiple threads; otherwise there could be problems with
the data getting out of synch or with threads performing unnecessary work. </p>

<h3>Mutexes</h3>

<p>We prevent these problems by using a Mutex object. A Mutex is a
&quot;mutually exclusive&quot; lock. Before accessing data which might be used
by multiple threads, functions instantiate a Mutex object, which acquires the
exclusive lock. An other thread that tries to access the data at the same time
will also instantiate a Mutex, but the call will block until the first thread
has released its lock. </p>

<p>To save space, we use one underlying mutex implementation object for the
entire application. An individual Mutex object simply acquires and releases the
lock on this this global object. Since the implemention of a mutex is highly
platform-dependent, developers who plan to use the International Classes for
Unicode in a multithreaded environment are required to create their own mutex
implementation object and register it with the system. </p>

<h3>Re-Entrancy</h3>

<p>Using a single, global lock object can, of course, cause reentrancy
problems. Deadlock could occur where the Mutex aquire is attempted twice within
the same thread before it is released. For example, Win32 critical sections are
reentrant, but our testing shows that some POSIX mutex implementations are not.
POSIX would require additional code, at a performance loss. </p>

<p>To avoid these problems, the Mutex is only aquired during a pointer
assignment, where possible. In the few cases where this is not true, care is
taken to not call any other functions inside the mutex that could possibly
aquire the mutex. </p>

<p>The result of this design principle is that the mutex may be aquired more
times than necessary, however time spent inside the mutex is then minimized. </p>

<p>Developers implementing the Mutex are not required to provide reentrant-safe
implementations. </p>

<h3>Using collators in multi-threaded environment</h3>

<p>Instances of Collator class are meant to be used on per thread basis.
Although it is possible to have multiple threads access one Collator there is
no guarante that such a construct will work, especially if number of threads
grows over 10. There are no limitations on number of threads if each thread
creates its own separate instance of Collator class.</p>

<p>Test results have shown that case with 50 threads accessing 1 collator fails
with a crash after 20 threads are reached. However, a test with 50 threads
creating separate instances works well.</p>

<h3>Implementations</h3>

<p>On Win32 platforms, a reentrant mutex is most naturally implemented on top
of a Critical Section.<br>
On POSIX platforms, pthread_mutex provides an implementation. </p>

<p>The International Classes for Unicode are provided with reference
implementations for Win32 and POSIX. </p>

<p><b>See also:</b> </p>

<ul type=disc>
 <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
     mso-list:l0 level1 lfo1;tab-stops:list .5in'><b>mutex.h </b>- Mutex API</li>
 <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
     mso-list:l0 level1 lfo1;tab-stops:list .5in'><b>muteximp.h</b> - The API's
     and instructions for providing your own mutexes.</li>
 <li class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
     mso-list:l0 level1 lfo1;tab-stops:list .5in'><b>mutex.cpp</b> - includes
     reference implementations for Win32 and POSIX.</li>
</ul>

</div>

</body>

</html>
