|
1
20
一般来说,多线程系统上的malloc/new/free/delete是线程安全的,所以这应该没有问题——在一个线程中分配,在另一个线程中取消分配是一件非常常见的事情。 由于线程是一种实现特性,因此它当然依赖于实现—例如,某些系统要求您与多线程运行时库链接。 |
|
2
6
|
|
|
3
2
为了能够在一个线程中分配,在另一个线程中释放,您需要运行时库是线程安全的。自VisualStudio2005以来,Microsoft运行时都是线程安全的,VisualStudio2003提供了单线程和线程安全运行时—显然,如果使用线程,您应该选择与多线程运行时链接。 至于它是合法的、非法的还是依赖于实施的,我认为以上都不是。它完全超出了标准的范围,因为它根本没有提到线程。 |
|
|
4
1
|
|
|
5
1
它之所以有效,是因为线程属于同一进程并共享相同的地址空间。。 |
|
|
6
1
|