text文本

1、动态规划比递归快-LeetCode91-解码方法2、Linux内存描述之内存节点node--Linux内存管理3、笔试题—字符串常见的算法题集锦4、机器学习系列(14)_SVM碎碎念part2:SVM中的向量与空间距离5、大数运算(7)——大数阶乘(求阶乘)6、经典设计模式实战演练7、数独求解算法(回溯法和唯一解法)java实现8、int和byte之间的转换9、matlab读取数据文件
package main
import ("os""bufio""io""fmt""sync""time"
)func main()  {var wg sync.WaitGroupvar locker sync.Mutexfile,_:=os.OpenFile("./src/gocode/jt/test",os.O_RDONLY,666)defer  file.Close()fw:=bufio.NewReader(file)for i:=1;i<=2;i++{go func(index int) {defer  wg.Done()for{locker.Lock()str,err:=fw.ReadString('\n')if err!=nil{if err==io.EOF{locker.Unlock()break}fmt.Println(err)}time.Sleep(time.Millisecond*200)fmt.Printf("【协程%d】:%s",index,str)locker.Unlock()}}(i)}wg.Add(2)wg.Wait()fmt.Println("读取完成")}

执行结果:

【协程2】:1、动态规划比递归快-LeetCode91-解码方法
【协程2】:2、Linux内存描述之内存节点node--Linux内存管理
【协程1】:3、笔试题—字符串常见的算法题集锦
【协程2】:4、机器学习系列(14)_SVM碎碎念part2:SVM中的向量与空间距离
【协程1】:5、大数运算(7)——大数阶乘(求阶乘)
【协程2】:6、经典设计模式实战演练
【协程1】:7、数独求解算法(回溯法和唯一解法)java实现
【协程2】:8、int和byte之间的转换
【协程1】:9、matlab读取数据文件
读取完成

Process finished with exit code 0

转载于:https://www.cnblogs.com/sunlong88/p/11240973.html

多协成利用互斥锁按顺序执行读取文件相关推荐

  1. python 读取文件到字典读取顺序_python顺序的读取文件夹下名称有序的文件方法...

    python顺序的读取文件夹下名称有序的文件方法 如下所示: import os path="/home/test/" #待读取的文件夹 path_list=os.listdir( ...

  2. Python多任务(3.线程--多线程共享全局变量,利用同步解决资源竞争,利用互斥锁)

    1. 线程之间是共享全局变量的 验证代码: import threading import time# 定义一个全局变量 g_num = 100def test1(): # 修改g_num的值glob ...

  3. 利用互斥锁和条件变量实现生产者消费模型

    以下内容全部来自于自旋锁_哔哩哔哩_bilibili #include <stdio.h> #include <pthread.h> #include <stdlib.h ...

  4. 利用Python按数字顺序批量修改文件名称

    为了按顺序修改文件名称,采用对[文件名称列表]进行排序的方法. 要对列表进行排序,这里使用列表的sort()方法.这个方法会在不创建新的列表的情况下直接对列表进行排序. 逆序排列:sort(rever ...

  5. 利用xlrd,Python对excel读取文件

    Python安装xlrd 首先我们应该配置pip 详细配置教程地址: https://blog.csdn.net/hanhanwanghaha/article/details/105811544 ht ...

  6. 十、Go协程的调度,互斥锁,计数器和线程池

    @Author:Runsen 在字节面试中,我见过:GO语言中的协程与Python中的协程的区别?其实就是要我讲解Go中GMP机制.我表示很多都用过,但是底层不了解. 那时我只知道与传统的系统级线程和 ...

  7. golang:1.并发编程之互斥锁、读写锁详解

    本文转载自junjie,而后稍作修改. 一.互斥锁 互斥锁是传统的并发程序对共享资源进行访问控制的主要手段.它由标准库代码包sync中的Mutex结构体类型代表.sync.Mutex类型(确切地说,是 ...

  8. Python 线程互斥锁 Lock - Python零基础入门教程

    目录 一.前言 二.Python 线程共享全局变量 三.Python 线程互斥锁 1.创建互斥锁 2.锁定资源/解锁资源 四.Python 线程死锁 五.重点总结 六.猜你喜欢 一.前言 在前一篇文章 ...

  9. go语言基础-----18-----协程安全、互斥锁、读写锁、匿名锁、sync.Once

    1 线(协)程安全-互斥锁 竞态检查工具是基于运行时代码检查,而不是通过代码静态分析来完成的,可以添加-race 来执行竞态检测.但是对于那些没 有机会运行到的代码逻辑中如果存在安全隐患,即使加了-r ...

最新文章

  1. datagrid的正反双向排序
  2. 生物技术行业十年回顾:微生物组发展未达预期?
  3. 【LeetCode】two num 利用comparable接口 对对象进行排序
  4. STM32串口实时接收数据与所提前定义的比较,并作出相应的操作
  5. html代码 通用代码,新浪博客通用html代码及其使用方法
  6. futurejava前台_web前端页面与后端Java的数据交互
  7. IOS学习笔记十九NSArray和NSMutableArray
  8. 2020webpack的面试题(webpack)
  9. web前端开发规范总结
  10. 算法不会,尚能饭否之排序——冒泡排序(bubble sort)
  11. vue-cli初始化项目2.x|3.x
  12. qt中如何使用mysql_qt中如何使用mysql 以及静态编译qt中如何加上mysql(1)
  13. 2019国内高端智能云呼叫中心系统,让简单的工作变得更有值得
  14. 双轮载人平衡车设计完整教程之硬件篇
  15. 人脸识别系统落地酒店 刷脸入住更安全
  16. AutoRunner学习——下载安装
  17. DDCTFRre3-虚拟指令分析
  18. Chuck语言学习笔记——4.复数,四则运算与类型转换
  19. 口袋妖怪金心银魂详细图文攻略(上)及游戏下载
  20. 江苏省谷歌地球高程DEM等高线下载

热门文章

  1. c语言循环语句中花括号的作用,c语言中用括号将花括号括起来给变量赋值
  2. [转载]【海苔肉松奶酪芝麻包】喜欢做简单的面包_万金油_新浪博客
  3. pyecharts可视化:爱情公寓==爱情公墓?
  4. “私厨”会代表新生活方式的到来吗?初创公司“爱大厨”就想派厨师上门为忙碌的人类做菜 | 36氪...
  5. inline内联函数
  6. ONU状态及激活过程
  7. 歌尔微电子递交上会稿:半年营收14.6亿 拟募资32亿
  8. Excel Row函数和Rows函数的使用方法,含Row(A:A)与Row(1:1)实例
  9. 电脑关闭计算机无法使用,为何电脑关不了机_电脑能正常用但是关不了机怎么办-win7之家...
  10. 阿里fastjson_再爆安全漏洞,这次轮到Jackson了,竟由阿里云上报