5

I know _r suffix is used to indicate something thread-safe. For example strtok and strtok_r or libmysql.so and libmysql_r.so. But I cannot find anywhere what this actually means ? For example, _t means 'type' and what does _r suffix mean?

Zaffy
  • 15,683
  • 8
  • 48
  • 76

3 Answers3

10

See Chapter A.4.16 Thread-Safety in http://pubs.opengroup.org/onlinepubs/000095399/xrat/xbd_chap04.html:

The suffix "_r" is historical, where the 'r' stood for "reentrant".

halex
  • 15,885
  • 5
  • 53
  • 65
5

The _r suffix stands for reentrant.

Olaf Dietsche
  • 69,448
  • 7
  • 95
  • 188
3

_r means reentrant, even though those functions may not be really reentrant. Those functions just guarantee not to use static storage.

ninjalj
  • 41,040
  • 9
  • 101
  • 143