`
wanghailiang333
  • 浏览: 194761 次
  • 性别: Icon_minigender_1
  • 来自: 广西
社区版块
存档分类
最新评论

网络编程死锁小问题

阅读更多

网络编程时遇到的死锁小问题

(死锁是循环等待临界资源,而以下并不是循环等待,而是临界资源一直被占用不释放而发生的问题……在写这篇文章前没有很好的考虑死锁的定义的问题,所以很鲁莽的写下了下边的东西,又什么问题请多多指教。)

      在做网络编程的时候,遇到了一个问题,需要使用FILE指针,打开一个套接字(socket)的流,客户端分别有两个线程对数据进行处理,一个线程是处理接收数据,设称为ThreadReceive()线程,另外一个线程为处理发送数据,设称为ThreadSend()线程,在编程时,只使用了一个FILE指针,在ThreadReceive()线程中需要用到此FILE指针接收数据,在ThreadSend()线程中需要使用此FILE发送数据,这时问题就来了:当ThreadSend()发送消息时需要用到FILE指针将数据传输出去,而FILE指针正被ThreadReceive()线程占用接收数据没有释放,所以ThreadSend()线程就会等待FILE指针被ThreadReceive()释放,这就导致了死锁……。在程序运行时的表现就是,程序运行到发送函数时就停止不运行了……用了一个下午的时间来解决这个问题,也就是声明两个FILE指针,一个专门用于发送线程(ThreadSend())另一个专门用于接收线程(ThreadReceice()),这样两个线程就不会去竞争着使用临界资源(一个FILE指针)。

死锁情况如图:(图见附件)



--还没想过自己在编程时还会遇到这样的问题,郁闷呀……不过也是第一次这么真实的接触到死锁这个概念,以前都是从课本上看到的,以后自己还要多学习学习呀。

 

  • 大小: 14.9 KB
分享到:
评论

相关推荐

    Linux网络编程 视频 教程

    Linux网络编程(总共41集) 讲解Linux网络编程知识,分以下四个篇章。 Linux网络编程之TCP/IP基础篇 Linux网络编程之socket编程篇 Linux网络编程之进程间通信篇 Linux网络编程之线程篇 Linux网络编程之TCP/IP...

    C++教程网《Linux网络编程》视频百度云地址

    Linux网络编程(总共41集) 讲解Linux网络编程知识,分以下四个篇章。 Linux网络编程之TCP/IP基础篇 Linux网络编程之socket编程篇 Linux网络编程之进程间通信篇 Linux网络编程之线程篇 Linux网络编程之TCP/IP...

    [免费]2018年C++教程网的linux网络编程视频百度云下载链接.rar

    Linux网络编程(总共41集) 讲解Linux网络编程知识,分以下四个篇章。 Linux网络编程之TCP/IP基础篇 Linux网络编程之socket编程篇 Linux网络编程之进程间通信篇 Linux网络编程之线程篇 Linux网络编程之TCP/IP...

    c++教程网的linux网络编程视频下载

    Linux网络编程(总共41集) 讲解Linux网络编程知识,分以下四个篇章。 Linux网络编程之TCP/IP基础篇 Linux网络编程之socket编程篇 Linux网络编程之进程间通信篇 Linux网络编程之线程篇 Linux网络编程之TCP/IP...

    C++教程网视频:linux网络编程

    Linux网络编程(总共41集) 讲解Linux网络编程知识,分以下四个篇章。 Linux网络编程之TCP/IP基础篇 Linux网络编程之socket编程篇 Linux网络编程之进程间通信篇 Linux网络编程之线程篇 Linux网络编程之TCP/IP...

    2018年C++教程网的linux网络编程视频共41集百度云下载链接.rar

    Linux网络编程(总共41集) 讲解Linux网络编程知识,分以下四个篇章。 Linux网络编程之TCP/IP基础篇 Linux网络编程之socket编程篇 Linux网络编程之进程间通信篇 Linux网络编程之线程篇 Linux网络编程之TCP/IP基础篇...

    linux网络编程

    Linux网络编程之TCP/IP基础篇 01TCPIP基础(一) ISO/OSI参考模型 TCP/IP四层模型 基本概念(对等通信、封装、分用、端口) 02TCPIP基础(二) 最大传输单元(MTU)/路径MTU 以太网帧格式 ICMP ARP RARP 03TCPIP基础...

    Java网络编程(第三版)中文版.part11.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part06.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part07.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part09.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part01.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part03.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part02.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part04.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part05.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part10.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part13.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part12.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

    Java网络编程(第三版)中文版.part08.rar

    Java网络编程(第三版)中文版(不看后悔) JAVA Network Programming,Third Edition 原出版社: O'Reilly 作者: (美)Elliotte Rusty Harold [作译者介绍] 译者: 朱涛江[同译者作品] 林剑 丛书名: O'...

Global site tag (gtag.js) - Google Analytics