2.2. 编写可重入且线程安全的代码

ARM C 库支持多线程,例如,在使用实时操作系统 (RTOS) 时。 在本节的其余部分中介绍多线程时,将使用以下定义:

线程

表示多个彼此之间共享全局数据的执行流。

进程

表示共享一组特定全局数据的所有线程的集合。

如果计算机中存在多个进程,它们可能是完全独立的,因而不共享任何数据(特殊情况除外)。 类似地,每个进程可以是单线程进程,也可以分为多个线程。

如果是单线程进程,则只有一个控制流。 不过,在多线程应用程序中,几个控制流可能会试图同时访问相同的函数和资源。 要保护资源的完整性,为多线程应用程序编写的所有代码都必须是可重入线程安全的

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0349AC
Non-Confidential