社区
Windows SDK/API
帖子详情
一个简单的线程问题
dengpingyy
2004-08-11 08:07:31
我现在做了一个数据转换程序(把DAT文件中的数据导入SQL SERVER)中,但是由于数据量特别大.转换时间特别长,在转换过程中,程序就像死机了一样,现在我想用线程去做,但是没做成功,哪位大哥,可以帮忙给点代码或例子?谢谢
...全文
95
5
打赏
收藏
一个简单的线程问题
我现在做了一个数据转换程序(把DAT文件中的数据导入SQL SERVER)中,但是由于数据量特别大.转换时间特别长,在转换过程中,程序就像死机了一样,现在我想用线程去做,但是没做成功,哪位大哥,可以帮忙给点代码或例子?谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dengpingyy
2004-08-13
打赏
举报
回复
上面这位叫'还是铁棒....针'的大哥,用你的方法,我现在要传入DAT文件名的参数,怎么样操作!谢谢!
beyondtkl
2004-08-12
打赏
举报
回复
照你描述的情形 用线程可能效果更糟糕
蓝色光芒
2004-08-12
打赏
举报
回复
var
Stop : Boolean;
hDat2SQLThread : Thandle;//定义一个句柄
ThreadID : DWord;
procedure Dat2SQL;stdcall;
begin
...
while Not Stop do begin
//转数据过程
end;
...
end;
Stop := False;
hDat2SQLThread := CreateThread(nil,0,@Dat2SQL,nil,0,ThreadID);
如果想停止程序,放个按钮,写上Stop := True就行了。
ztenv
2004-08-12
打赏
举报
回复
用线程速度会更慢,虽然会响应用户的事件,建议楼主先把DAT文件分主几个小块,然后再添到数据库中,等需要时,再从数据库中读出来合并就可以了
iLvXX1981
2004-08-11
打赏
举报
回复
1、首先新建一个工程,然后选择File、New、Other、Thread Object,
ClassName:TMythread;生成一个新的单元Unit2.pas;
2、
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Unit2;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Button2: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
Mythd: TMythread;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Mythd := TMythread.Create(True);
mythd.FreeOnTerminate := True;
//可以在这里传参数到unit2中,如文件名等
Mythd.Resume;
end;
end.
unit Unit2;
interface
uses
Classes;
type
TMyThread = class(TThread)
private
{ Private declarations }
protected
procedure Execute; override;
end;
implementation
{ TMyThread }
procedure TMyThread.Execute;
begin
{ Place thread code here }
end;
end.
要在unit2定义必要的参数,由unit1中传入;
POSIX多
线程
程序设计.pdf
此外,本书还讨论了调度的
问题
,并给出了避免错误和提高性能等
问题
的有价值的建议。本书使用了大量注释过后 实例来解释实际的概念,并包括Pthreads的
简单
索引和对标准化的展望。 《POSIX多
线程
程序设计》适合有经验...
秒杀多
线程
第四篇
一个
经典的多
线程
同步
问题
这个
问题
涉及到
线程
的同步和互斥,是一道非常有代表性的多
线程
同步
问题
,如果能将这个
问题
搞清楚,那么对多
线程
同步也就打下了良好的基础。 程序描述:主
线程
启动10个子
线程
并将表示子
线程
序号的变量地址作为参数...
List
线程
安全
问题
1. 发现
问题
List<Integer> list = new ArrayList<>(); new Thread(() -> { for (int i = 0; i < 10000; i++) { list.add(1); } },"A").start(); new Thread(() -> { for (int i = 0; i ...
多
线程
(一):创建
线程
和
线程
的常用方法
了解并发编程:实际工作中很少写多
线程
的代码,这部分代码一般都被人封装起来了,在业务中使用多
线程
的机会也不是很多(看具体项目),但是作为
一个
高级程序员如果不会多
线程
是说不过去的。 二:进程与
线程
...
单
线程
读单
线程
写
一个
变量是否一定要加锁
刚毕业的时候我会有这样的想法:
一个
线程
只读并没有改变变量的值并不会有两个
线程
同时写
一个
变量产生竞态,所以不用加锁,但是工作中长者给我指导都是多
线程
必须加锁,所以我也没有深究这个
问题
,从来没有想过为什么...
Windows SDK/API
1,183
社区成员
22,335
社区内容
发帖
与我相关
我的任务
Windows SDK/API
Delphi Windows SDK/API
复制链接
扫一扫
分享
社区描述
Delphi Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章