前言
笔者使用python写一写AI周边相关的demo,发现官方3.14版本提供的自由线程无法启用,官方文档明明写的提供啊,还有pycharm怎么启用自由线程的能力。毕竟现在多核CPU在服务器是常态。要充分利用。网上搜了一下,大部分是源码编译,明明官方提供2进制包啊,其实源码编译也是2个指令,笔者编译后才发现的,本身官方2进制也是源码编译的。

问题
根据安装文档:https://py-free-threading.github.io/installing-cpython/#__tabbed_1_2

文档写的很详细

但是这个跟python 3.13体验自由线程是不一样的,那个时候可以只安装自由线程版本。当笔者安装官方文档验证时,发现还是gill锁:https://docs.python.org/3/howto/free-threading-python.html

天塌了,为啥啊,差点就源码编译了。

解决思路
笔者查了很多资料,均没有说明,知道看官方文档:最终还是依靠官方文档啊https://docs.python.org/zh-cn/3.14/using/mac.html#install-freethreaded-macos

大致意思是官方提供的自由线程改动巨大,所以单独命名了,且与原来的指令不冲突,试一下

果然如此,这样就可以在PyCharm中配置

执行代码看看

成功实现自由线程
总结
通过官方文档成功实现了自由线程,官方并不是一刀切换,而是保持原来的能力不变,新增一个指令实现自由线程,所以如果仅仅是升级官方2进制包是没有实现自由线程的,必须修改指令,或者别名一下指向python3.14t。当然如果源码编译那么参数直接就关闭了。
https://www.python.org/downloads/release/python-3142/

执行如下命令,源码编译
bash
./configure --enable-optimozations --enable-shared --disable-gil --prefix=/Users/xxx/python314
make
make altinstall
但是是2个指令,还是一样啊
