CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  语言基础/算法/系统设计

线程冲突问题, 请高手们指点指点

楼主JerryWang2000(阿恒)2005-05-31 15:04:41 在 Delphi / 语言基础/算法/系统设计 提问

我的程序中有两个线程同时在运行:   一个SOCK线程,用来从服务上下载文件;一个串口线程,用来将文件下载到PDA,空闲的时候发在线检测命令给PDA,若PDA在一定时间内返回相应的信号表示在线,否则退出。现在的问题是,当SOCK线程在用FTP下载文件时,串口线程就收不到PDA返回的信号,以至通信无法继续下去。   请问这是怎么一回事,要怎么解决? 问题点数:100、回复次数:7Top

1 楼heluqing(鉴之小河〖劳累求充实〗)(vcl .net)回复于 2005-05-31 15:16:55 得分 50

开第三个线程,把检测PDA和往PDA里面写数据的功能分开,看看会怎么样?  
  从服务器下载文件和向PDA下载文件的操作要注意文件的同步,还有就是在用SOCKET下载的线程里面加上sleep看看...  
  不知道你在程序里面是不是用到了CriticalSection,如果有的话,就要查看一下是不是有些Acquire之后忘记Release了?Top

2 楼aiirii(ari-http://spaces.msn.com/members/aiirii/)回复于 2005-05-31 15:25:44 得分 50

〉〉问题是,当SOCK线程在用FTP下载文件时,串口线程就收不到PDA返回的信号,以至通信无法继续下去。   请问这是怎么一回事,〉〉  
   
  说明你的代码处理有问题,互相有影响,  
  可能要加入一些同步处理  
   
  贴出关键代码Top

3 楼JerryWang2000(阿恒)回复于 2005-05-31 16:06:04 得分 0

从服务器上下载文件与下载文件到PDA两个过程是分开的,只有从服务器上将文件下载下来后才将此文件写入PDA,在SOCK下载文件的同时,串口线程是空闲的,只是做一件事:检测PDA在线,每隔22秒发一次信号给PDA。Top

4 楼heluqing(鉴之小河〖劳累求充实〗)(vcl .net)回复于 2005-05-31 16:17:19 得分 0

断点一下,看看是不是真的发送查询信号了,如果发送了,那么,格式对不对???Top

5 楼JerryWang2000(阿恒)回复于 2005-05-31 16:21:18 得分 0

这个可以肯定,查询信号发了,格式也对。如果没有SOCK通讯,就可以收到PDA的返回信息。Top

6 楼JerryWang2000(阿恒)回复于 2005-05-31 16:51:02 得分 0

我刚才调试了一下,发现一个问题,FTP下载文件时弹出一个对话框来显示下载进度,如果把这个对话框去掉不显示,那么串口线程就会收到PDA的返回信息。但这个对话框还是要的呀,对话框的调用和进度显示都是通过PostMessage,   应该不影响线程呀,各位,有什么好的办法呀?Top

7 楼JerryWang2000(阿恒)回复于 2005-06-02 19:05:06 得分 0

哎,结贴.Top

相关问题

  • 线程冲突??
  • VB.Net多线程问题,请高手指点,在线等待!!!
  • 请高手指点一个线程优先级控制问题!
  • 多线程问题,请高手进来指点一下。
  • 请高手指点 关于java线程池的。500'
  • 有关线程局部变量的问题,请高手指点
  • 高手请多多指点~~关于多线程和多画面
  • 关于多线程的同步问题,请指点迷津
  • 线程不能正常退出,请指点一下
  • 线程发送主线程,主线程一个函数不响应的问题??(请季老大等高手指点!!)

关键词

  • 线程
  • 下载
  • 文件
  • pda
  • 信号
  • 服务器
  • 串口
  • 对话框
  • 返回
  • sock

得分解答快速导航

  • 帖主:JerryWang2000
  • heluqing
  • aiirii

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo