请问线程和进程?

sun_changzhan 2004-10-13 08:31:13
线程和进程的区别与联系。最好能详细的讲解一下线程的用法和进程的用法,谢谢!!!!
...全文
138 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
kilnut 2004-10-22
  • 打赏
  • 举报
回复
进程有两部分:进程内存对象和进程地址空间。
但是进程不干什么事,事情都是由线程去做。一个进程包含多个线程,是线程的容器(给线程分配的内存都在进程地址空间内)。
watermarking 2004-10-20
  • 打赏
  • 举报
回复
进程是资源分配的基本单位,系统将资源分配给进程,但是进程不是执行的最小单位。为了节省处理器访问存储器的时间,将进程分为更小的单位--线程。线程使用的资源只能来自进程。
sun_changzhan 2004-10-19
  • 打赏
  • 举报
回复
SimonChu(西蒙)谢谢了.
SimonChu 2004-10-19
  • 打赏
  • 举报
回复
^_^,别客气!
whp320 2004-10-18
  • 打赏
  • 举报
回复
那应该去看看实例。
SimonChu 2004-10-18
  • 打赏
  • 举报
回复
小例子:
UINT HandleSubmitProc(LPVOID); //声明一个全局的线程处理函数

//在你的程序中创建一个线程:
m_pSubmitThread = AfxBeginThread(HandleSubmitProc, this); //处理发送线程
//m_pSubmitThread是你程序中的一个CWinThread指针

///////////////////////////////////////////////////////////////////////////////
// 函数名: HandleSubmitProc
// 功 能: 发送短信处理函数
// 参 数: void指针
// 返回值: 0
///////////////////////////////////////////////////////////////////////////////
UINT HandleSubmitProc(LPVOID pParam)
{
CHandler *pHandler = (CHandler *)pParam;
pHandler->printf("[%d][HANDLER]: HandleSubmitProc线程开始",
pHandler->m_nHandlerNum);
pHandler->SendSMToSMC(); //调用实际处理函数
pHandler->m_nCanTerminate++;
pHandler->printf("[%d][HANDLER]: HandleSubmitProc线程退出",
pHandler->m_nHandlerNum);
return 0;
}

///////////////////////////////////////////////////////////////////////////////
// 函数名: SendSMToSMC
// 功 能: 提交短信到SMC
// 参 数: 无
// 返回值: 无
///////////////////////////////////////////////////////////////////////////////
void CHandler::SendSMToSMC()
{
CNodeSubmit *pCurrNode;
time_t nTimeNow;
CNodeSubmit PackSubmit;
SUBMIT_SM SubmitSM;
DATA_PACKET SendData;
RTCS_CTbool bFinded;
//...
while(m_bRun)
{
//...
if(SendToServer(&SendData, m_pSocketMT) == TRUE)
{
printf("[%d][SUBMIT]: Socket发送成功", m_nHandlerNum);
}
else
printf("[%d][SUBMIT]: Socket发送失败", m_nHandlerNum);
Sleep(THREAD_DELAY); //临时将线程挂起THREAD_DELAY毫秒,以备别的线程使用CPU
//...
}
}

大概就是这样的,还是看看书上讲的,自己试试最好。
sun_changzhan 2004-10-15
  • 打赏
  • 举报
回复
其实我懂得进程和线程的概念,只是不会用(就是不知道怎么加在程序里),能不能讲个实例?谢谢!!!
Mr_Ldh 2004-10-13
  • 打赏
  • 举报
回复
这是一个很大的话题,楼主最好找些书看一下.
Angus83 2004-10-13
  • 打赏
  • 举报
回复
补一点哈,进程不执行任何代码,是不活泼的,线程是用来执行代码的,一个进程一定要拥有一个主线程用于执行代码,具体的楼主可以去看看系统原理方面的书(如windows核心编程),毕竟书上写得很详细,能理解更好更深
kurt8276 2004-10-13
  • 打赏
  • 举报
回复
进程中包括线程。
进程是程序
线程是程序执行的路径
sssfanatcsdn 2004-10-13
  • 打赏
  • 举报
回复
进程是拥有自己的内存、文件句柄和其他系统资源的运行程序。单个进程可以包含独立的执行路径,叫做线程。

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧