一个关于Synchronize的问题

suchaboy 2007-05-10 10:50:22
我的程序基本结构是这样的:
void __fastcall myhread::Execute()
{
........
main();
.......
}
void __fastcall myhread::main()
{
............
process(BYTE* ptr)
...........
}
void __fastcall myhread::process(BYTE* ptr)
{
mypointer = ptr ////我要在myfunction里面用ptr,就申请一个全局变量 mypointer来传递
Synchronize(MyFunction)

............//后面还有处理ptr的程序
}
void __fastcall myhread::MyFunction()
{
//在memo中显示mypointer的内容
}
我的问题是,因为Sychronize后,MyFunction是由主线程调用的,但在process函数后半部还有处理ptr的函数,所以在memo中显示mypointer内容时,会不会已经被修改了?
...全文
218 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
suchaboy 2007-05-14
  • 打赏
  • 举报
回复
感谢楼上两位阿
过客猫2022 2007-05-10
  • 打赏
  • 举报
回复
不用担心,你在处理MyFunction已将要显示的数据复用到memo中了。
MEFULEU 2007-05-10
  • 打赏
  • 举报
回复
既然担心,为啥不重新开辟一个临时BYTE*空间?
suchaboy 2007-05-10
  • 打赏
  • 举报
回复
具体一点在memo中显示mypointer内容的过程中,mypointer会不会被修改?

13,826

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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