ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzahw_5.4.0.1/rzahwevaco.htm

67 lines
4.3 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="reference" />
<meta name="DC.Title" content="Existing application evaluation" />
<meta name="abstract" content="When writing a multithreaded application, you should evaluate all the parts of the application and all the services that it uses for thread safety." />
<meta name="description" content="When writing a multithreaded application, you should evaluate all the parts of the application and all the services that it uses for thread safety." />
<meta name="DC.Relation" scheme="URI" content="rzahwmulco.htm" />
<meta name="DC.Relation" scheme="URI" content="rzahwsafco.htm" />
<meta name="DC.Relation" scheme="URI" content="rzahwexico.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rzahweva-evaco" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>Existing application evaluation</title>
</head>
<body id="rzahweva-evaco"><a name="rzahweva-evaco"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Existing application evaluation</h1>
<div><p>When writing a multithreaded application, you should evaluate all
the parts of the application and all the services that it uses for thread
safety. </p>
<div class="section"><p>How each service or API that is used by the application uses its
storage resources is an important consideration for providing threadsafe applications.
If you do not use storage in a threadsafe manner, data in your application
is likely to be damaged.</p>
</div>
<div class="section"><p>Other critical aspects in creating threadsafe applications are
the APIs and system services on which your application or your application
services rely. To be threadsafe, your storage usage and all APIs and services
that you use directly or indirectly must be threadsafe. APIs and system resources
that you use indirectly are particularly difficult to evaluate. See the <a href="../apiref/api.htm">APIs</a> topic
for the specific APIs or system services you use to see if they are thread
safe. </p>
</div>
<div class="section"><p>You will probably call system services, APIs, or other applications
for which you do not have the source code. Many of these services are not
be classified as threadsafe or non-threadsafe. You must assume that the services
are not threadsafe. </p>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzahwmulco.htm" title="If you are going to write multithreaded applications or server applications for i5/OS, you should be familiar with several techniques.">Multithreaded programming techniques</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="rzahwsafco.htm" title="A function is threadsafe if you can start it simultaneously in multiple threads within the same process. A function is threadsafe if and only if all the functions it calls are also threadsafe.">Thread safety</a></div>
</div>
<div class="relref"><strong>Related reference</strong><br />
<div><a href="rzahwexico.htm" title="The i5/OS registration facility allows you to define exit points for functions in an application and to register programs that run at those exit points.">Exit points</a></div>
</div>
</div>
</body>
</html>