#用队列来模拟一下同步的过程,这里的同步指的是:想把所有的数据处理完放到一个队列中,然后主线程才会去读取数据的一个过程 #而不是子线程一边去处理数据,主线程一边去读取数据,这是异步啊 import tensorflow as tf import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'#把报错的这个警告等级降低 #1.定义队列 Q = tf.FIFOQueue(3,tf.float32) #大小是3的一个队列,数据类型是float32 #2.放一些数据 enq_many = Q.enqueue_many([[0.1,0.2,0.3],]) #放一个列表, #3.对队列中的数据进行计算处理 out_q = Q.dequeue() #出一个队列元素 data = out_q + 1 #把刚出来的这个元素做+1处理 en_q = Q.enqueue(data)#吧处理完的数据这个数据在放进去 with tf.Session() as sess: #1.初始化队列 sess.run(enq_many) #2.处理数据 for i in range(100): sess.run(en_q) #3.训练数据 for i in range(Q.size().eval()): print(sess.run(Q.dequeue()))