我刚刚在文档中发现FloatToStr并且DateToStr在它们的单参数重载中不是线程安全的.原因是他们访问存储在全局变量中的本地化信息.
我的问题是:如果我不在运行时更改格式设置,这是否具有实际意义?据我了解,只要每个人都只读取格式设置 - 即使是多个线程,我也是安全的.
这是真的还是我错过了什么?
谢谢.
有没有可以添加将在单元初始化之前执行的代码的地方?
我想要这样做的原因是我需要更改DecimalSeparator,这必须在某些单元初始化之前完成.我把它放在项目源代码中,在Application.Initialize之前,但到时候已经太晚了.
我认为它唯一的选择是将它放在需要更改DecimalSeparator的单元的初始化中,是这种情况吗?
提前感谢任何建议.
是否有一个Windows API调用或Delphi调用,它将告诉我Delphi 6期望由其格式转换例程(如StrToFloat())使用哪些字符集?例如,如何判断Delphi是否会看到逗号或小数点的句点?