localtime函数用法 为什么localtime函数是线程不安全的?
浏览量:2043
时间:2021-03-16 03:40:43
作者:admin
为什么localtime函数是线程不安全的?
根据Localtime函数的原型定义进行分析
struct TM*Localtime(const time)函数返回struct TM指针,在函数描述中不要求是自由的,证明TM对象不是malloc或new。那么TM必须是Localtime函数中的全局变量或局部静态变量。
这样的变量在多线程访问时会出现问题。第一个线程在返回Localtime之前更改变量的值,第二个线程再次更改变量,依此类推。这样,当第一个线程实际返回时,值被更改了很多次,这是一个典型的函数重入问题。
因此,Localtime函数线程不安全。
时间函数gmtime和localtime有什么区别?
1. 本地时间是从1970-1-1零点到当前时间系统的偏移秒数,转换为本地时间。gmtime函数转换的时间是UTC时间,没有时区转换。
2. 注:此函数得到的TM结构时间为日历时间。
3. 用法:structtm*本地时间(consttime) uT*时钟
4。返回值:返回指向TM结构的指针。TM结构是一种时间结构。H存储时间量(月、年、日等)
5
localtime函数用法 localtime_s函数的用法 c语言localtime函数
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。