原子创建和使用次数

【勇芳软件工作室】汉化HomePreviousNext

应用程序通过调用AddAtom函数创建一个【局部原子】它通过调用GlobalAddAtom函数创建一个【全球原子】.这两个函数都需要一个指向字符串的指针。系统会在相应的atom表格中搜索字符串,并将相应的原子返回给应用程序。在字符串原子的情况下,如果字符串已经驻留在原子表中,则系统会在此过程中增加字符串的引用计数。

重复调用添加相同的原子名称返回相同的原子。如果调用AddAtom表中的原子名称不存在,则将原子名称添加到表中,并返回一个新的原子。如果它是一个字符串原子,它的引用计数也被设置为1。

当应用程序不再需要使用本地原子时,应该调用DeleteAtom函数;当它不再需要全局原子时,它应该调用GlobalDeleteAtom函数。在字符串原子的情况下,这些函数中的任一个将相应原子的引用计数减少1。引用计数达到零时,系统将从表中删除原子名称。

只要引用计数大于零,即使在表中的应用程序终止后,字符串原子的原子名仍保留在全局原子表中。当相关联的应用程序终止时,本地原子表将被破坏,而不管表中的原子的引用计数。