1.建立隊列線程
Q=tf.FIFOQueue(10000,tf.float32)
10000 :隊列大小
tf.float32: 隊列數據類型
2.建立數據code
var = tf.Variable(0.0) data = tf.assign_add(var, tf.constant(1.0))
3.將數據放入隊列隊列
en_q=Q.enqueue(data)
4.建立隊列管理器it
qr=tf.train.QueueRunner(Q,enqueue_ops=[en_q]*2)
5.建立線程管理器io
coor=tf.train.Coordinator()
6.開啓線程thread
threads=qr.create_threads(sess,coord=coord,start=True)
7.回收線程import
coord.request_stop() coord.join()
完整代碼tensorflow
import tensorflow as tf Q = tf.FIFOQueue(1000, tf.float32) var = tf.Variable(0.0) data = tf.assign_add(var, tf.constant(1.0)) en_q = Q.enqueue(data) qr = tf.train.QueueRunner(Q, enqueue_ops=[en_q] * 2) init = tf.initialize_all_variables() with tf.Session() as sess: sess.run(init) coord = tf.train.Coordinator() threads = qr.create_threads(sess, coord=coord, start=True) for i in range(200): print(sess.run(Q.dequeue())) coord.request_stop() coord.join()