⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 task11.htm

📁 ST20 Embedded Toolset R2.0.5用于开发基于ST20芯片机顶盒软件的开发平台,2.0.5版本,国内找不到的.在国外论坛上花了N天才找到!
💻 HTM
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta name="GENERATOR" content="Quadralay WebWorks Publisher Professional Edition 6.0.5">
<meta name="TEMPLATEBASE" content="book_html">
<meta name="LASTUPDATED" content="12/01/03 14:14:41">
<title>5.10 Suspending tasks</title>

<STYLE TYPE="text/css">
<!--
	span.Signal { text-transform: uppercase; font-family: Verdana }
-->
</STYLE>

</head>

<body link="#3366CC" vlink="#9999CC" text="#000000" alink="#0000CC" bgcolor="#FFFFFF"
background="images/backgrnd.gif">

<p><img src="images/stlogo.gif" width="106" height="83" align="left"
alt="logo here!"> </p>

<table width="331" border="0" align="right" cellpadding="0" cellspacing="0">
  <tr>
    <td><a href="os20toc.htm"><img src="images/navtoc.gif" width="84" height="23"
    border="0" alt="TOC"> </a></td>
    <td><a href="task10.htm"><img src="images/navprev.gif" width="80" height="23"
    border="0" alt="PREV"> </a></td>
    <td><a href="task12.htm"><img src="images/navnext.gif" width="83" height="23"
    border="0" alt="NEXT"> </a></td>
    <td><a href="os20ix.htm"><img src="images/navidx.gif" width="84" height="23"
    border="0" alt="INDEX"> </a></td>
  </tr>
</table>

<p><br clear="all">
</p>

<hr align="left">

<blockquote>
<h2>
  <a name="1204804"> </a><font color="#003366"  face="Verdana, Arial, Helvetica, sans-serif">5.10 	 Suspending tasks</font>
</h2><hr>


<p>
  <a name="1204805"> </a><font size=2  face="Verdana, Arial, Helvetica, sans-serif">Normally a task only deschedules when it is waiting for an event such as a semaphore signal. This requires that the task itself call a function indicating that it is willing to deschedule at that point (for example, by calling <font size=2 face=Courier><strong>semaphore_wait</strong></font>). However, sometimes it is useful to be able to control a task, causing it to forcibly deschedule, without it explicitly indicating that it is willing to be descheduled. This can be done by suspending the task.</font>
</p>


<p>
  <a name="1204806"> </a><font size=2  face="Verdana, Arial, Helvetica, sans-serif">When a task is suspended, it stops executing immediately. When the task starts executing again, another task must resume it. When it is resumed, the task will be unaware that it was suspended, other than the time delay.</font>
</p>


<p>
  <a name="1204807"> </a><font size=2  face="Verdana, Arial, Helvetica, sans-serif">Task suspension is in addition to any other reason that a task is descheduled. Thus a task which is waiting on a semaphore and has been suspended will not start executing again until both the task is resumed and the semaphore is signalled, although these can occur in either order.</font>
</p>


<p>
  <a name="1209108"> </a><font size=2  face="Verdana, Arial, Helvetica, sans-serif"><b>Caution:</b></font>
<br>

<dl><dl>    <dl>
      <dt> <a name="1209112"> </a><font size=2  face="Verdana, Arial, Helvetica, sans-serif">Task suspension can easily cause deadlock; see <a href="libs135.htm#1242681"><font  color="#0000ff" face="Verdana, Arial, Helvetica, sans-serif"><i>task_suspend</i></font></a> in <a href="libs.htm#1214476"><font  color="#0000ff" face="Verdana, Arial, Helvetica, sans-serif"><i>Chapter

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -