[异步、tensorflow] - 子线程操作tensor,主线程处理tensor
- 参考
- 整体流程如下图
- 代码
import tensorflow as tf"""模拟: 子线程不停的取数据放入队列中, 主线程从队列中取数据执行包含: 作用域的命名、把程序的图结构写入事件、多线程
"""# 模拟异步存入样本.
# 1、 定义一个队列,长度为1000
with tf.variable_scope("init_sub_threads"):Q = tf.FIFOQueue(1000, tf.float32)# 2、 定义子线程需要做的事情, 值循环+1, 放入队列中
with tf.variable_scope("add_one"):var = tf.Variable(0.0, tf.float32)# 实现自增data = tf.assign_add(var, tf.constant(1.0))en_q = Q.enqueue(data)# 3、 定义队列管理器Op,指定子线程
with tf.variable_scope("init_queue_runner"):qr = tf.train.QueueRunner(Q, enqueue_ops=[en_q] * 2)# 初始化变量的op
with tf.variable_scope("init_var"):init_op = tf.global_variables_initializer()with tf.Session() as sess:# 初始化变量sess.run(init_op)# 开启线程管理器coord = tf.train.Coordinator()# 真正开启子线程threads = qr.create_threads(sess, start = True)# 主线程,不断读取数据训练for i in range(300):print(sess.run(Q.dequeue()))# 把程序的图结构写入事件filewriter = tf.summary.FileWriter("./summary/", graph=sess.graph)# 回收线程coord.request_stop()coord.join(threads)
[异步、tensorflow] - 子线程操作tensor,主线程处理tensor相关推荐
- DLL内线程同步主线程研究(子线程代码放到主线程执行)
DLL内线程同步主线程研究(子线程代码放到主线程执行) 我们在实际项目中经常会用到多线程编程,比如Socket编程等,在创建的线程内同步主线程一般使用Synchronize方法实现子线程操作放到主线程 ...
- 【Android 异步操作】Android 线程切换 ( 判定当前线程是否是主线程 | 子线程中执行主线程方法 | 主线程中执行子线程方法 )
文章目录 一.判定当前线程是否是主线程 二.子线程中执行主线程方法 三.主线程中执行子线程方法 一.判定当前线程是否是主线程 在 Android 中 , 如果要判定当前线程是否是主线程 , 可以使用如 ...
- [Android] 任意时刻从子线程切换到主线程的实现
[Android] 任意时刻从子线程切换到主线程的实现 - Android移动开发技术文章_手机开发 - 红黑联盟 转载于:https://www.cnblogs.com/melons/p/57919 ...
- C#多线程下, 子线程如何让主线程执行方法
C#多线程下, 子线程如何让主线程执行方法 重现一下当时我的需求: 我开了多个线程, 来监视一个变量, 然后去执行一些方法. 看起来没什么毛病, 但是运行起来会报错 此对象被其他线程占用 一开始想着可 ...
- 【Android】子线程切回主线程的方法梳理
[Android]子线程切回主线程的方法梳理 view.post(Runnable action) textView.post(() -> {textView.setText("更新t ...
- Android创建子线程和回调主线程的几种方式
一. 创建子线程//通过继承threadpublic class JNThread1 extends Thread {public JNThread1(String name){super(name) ...
- C# 子线程中访问主线程中的控件
/** 要想线程操作主线程的控件,首先声明一个委托(delegate)D,* 然后实例化委托d,再然后再子线程中使用this.BeginInvoke(d),* 就可以访问主线程的控件.* */usin ...
- 主线程退出,子线程会退出吗?子线程崩溃,主线程会退出吗?
记得以前刚接触多线程编程时,作为一个新手遇到的一个问题就是:我创建的子线程为什么没有跑起来?如以下最简单的一个程序: #include <stdio.h> #include <std ...
- java主线程控制子线程_CountDownLatch控制主线程等子线程执行完--Java多线程
1.[代码]CountDownLatch控制主线程等子线程执行完--Java多线程 package com.sihuatech.common; import java.util.concurrent. ...
最新文章
- 剑指offer:反转链表 python实现
- 最快的PNG图像解码器!速度提升2.75倍,比老大哥“libpng”还安全
- faceapp怎么合成未来宝宝照片_宝宝出生后,爸爸们应该如何宣布喜讯,各种官宣文案孕妈赶紧收藏...
- 使用Maven Jetty插件
- C++中的IPv6网络程序设计
- phpstorm xdebug配置
- 多功能笔记工具Notability创建甜甜圈图案的趣味教程
- WebAssembly 介绍
- 190715每日一句
- 【优化求解】基于matlab GUI模拟退火算法区域通信网频率规划【含Matlab源码 933期】
- 会议OA项目(送审后审批人签字功能)
- CentOS7 U盘安装操作系统卡在Reached target Basic System.
- T-SQL Recipes之Database Backups
- Android P(9.0) 证书加密算法变更
- P1219 [USACO1.5]八皇后 Checker Challenge 题解
- 详解argc和argv
- 什么是好的BIM轻量化引擎
- windows 下的 Latex使用软件安装以及插件安装
- Excel透视表之多表关联
- InDesign 教程:如何创建对齐参考线?