6 Star 12 Fork 11

QuecPython/microPython

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
thread_gc1.py 879 Bytes
一键复制 编辑 原始数据 按行查看 历史
chenchi 提交于 2021-06-03 16:44 +08:00 . first commit
# test that we can run the garbage collector within threads
#
# MIT license; Copyright (c) 2016 Damien P. George on behalf of Pycom Ltd
import gc
import _thread
def thread_entry(n):
# allocate a bytearray and fill it
data = bytearray(i for i in range(256))
# do some work and call gc.collect() a few times
for i in range(n):
for i in range(len(data)):
data[i] = data[i]
gc.collect()
# print whether the data remains intact and indicate we are finished
with lock:
print(list(data) == list(range(256)))
global n_finished
n_finished += 1
lock = _thread.allocate_lock()
n_thread = 4
n_finished = 0
# spawn threads
for i in range(n_thread):
_thread.start_new_thread(thread_entry, (10,))
# busy wait for threads to finish
while n_finished < n_thread:
pass
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/quecpython/microPython.git
git@gitee.com:quecpython/microPython.git
quecpython
microPython
microPython
master

搜索帮助