这是等待 Thread.finalization 并保持应用程序响应的正确方法

2024-01-04

实际上我正在使用这段代码并且工作正常,但我想知道这是否是正确的方法。

  while WaitForSingleObject(MyThread.Handle, 0) = WAIT_TIMEOUT do
    Application.ProcessMessages;

  ShowMessage('i am done');

VCL TThread 类有自己的WaitFor()在主线程上下文中调用时在内部泵送主消息队列的方法:

MyThread.WaitFor; 
ShowMessage('i am done'); 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这是等待 Thread.finalization 并保持应用程序响应的正确方法 的相关文章

  • Java 中的原子整数和普通不可变整数类有什么区别?

    由于 Integer 类也是不可变类 并且我们知道不可变类是线程安全的 因此原子整数需要什么 我很困惑 这是否是不可变对象的读取和写入不需要是原子的 而原子整数的读取和写入是原子的原因 这意味着原子类也是线程安全的 当您需要确保只有一个线程
  • 从 C++ .dll 到 Delphi Forms 应用程序的 PostMessage 问题

    我有用 Delphi 7 编写的 Windows 窗体应用程序和使用 MFC 编写的 C dll 目前 我正在尝试实现从 dll 到主可执行文件的基本消息发布 以在进度条上显示用户计算过程 但遇到了几个问题 让我先描述一下我的方法 我在 D
  • 如何制作自定义组件属性?

    我需要帮助来制作一个控件属性 当您单击它时 它会弹出一个自定义对话框 例如设置 就像 TPicture 一样 有什么想法或建议吗 如果您的类用作其他组件的属性 并且您想使用对象检查器来调用对话框 那么您必须实现并注册一个自定义属性编辑器 例
  • java:全局变量在线程中是否可见

    如果我在主线程中声明一个全局变量 假设我从主线程运行一个新线程 新线程可以访问主线程中的全局变量吗 msg 字符串是我要访问的变量 A simple banner applet This applet creates a thread th
  • “原子”系统调用是什么意思?

    我知道atomic通常在以下上 下文中使用竞争条件意思是类似一致性 and 根据多线程 多处理环境确定结果 没关系 但最近我读到了Linux中的原子系统调用 但不明白什么是atomic实际上这里的意思是 即how this 原子性 is 实
  • 如何取消注册我的应用程序的文件格式?

    在 Windows 10 中的 Delphi 10 4 2 win 32 VCL 应用程序中 我注册了 ICO我的图形应用程序的文件格式使用DSiWin32 DSiRegisterUserFileAssoc https github com
  • 在Service中使用Looper和使用单独的线程是一样的吗?

    在此示例中 来自文档 https developer android com guide components services html ExtendingService https developer android com guide
  • Node.js 多线程程序

    我编写了一个 node js 脚本来从交易所获取一些价格 它看起来像这样 async function main async function func var start time performance now for let rout
  • 当应用程序最小化时隐藏表单

    我有一个主表单和一个状态表单 当我的应用程序中的工作正在进行时 我会显示它们 如果工作完成我就打电话Hide状态表上出现 状态表消失 当我最小化主窗体而等待窗体可见时 就会出现问题 然后两种形式都被隐藏 这就是我想要的 但是 如果工作完成时
  • Delphi - 引用在运行时创建的组件

    我正在使用 Delphi 5 并且在运行时创建许多面板 然后在面板上创建按钮 显然也是在运行时创建 我需要这样做 因为将来我可能需要动态创建更多面板 按钮组合 我可以完成所有这些 但我不知道如何引用我创建的面板 因为我找不到访问面板组件名称
  • Python 多处理进程在一段时间后休眠

    我有一个脚本 它运行一个目录 并搜索具有给定结尾 即 xml 的所有文件以查找给定字符串并替换它们 为了实现这一点 我使用了 python 多处理库 作为示例 我使用 1100 个 xml 文件 其中包含大约 200MB 的数据 在我的 M
  • 如何在TWebBrowser中显示相对路径图像?

    我正在 DesignMode Doc DesignMode On 中使用 TWebBrowser 来编写 HTML 文档 TWebBrowser 中没有加载文档 磁盘上的 HTML 文件 我直接在 TWebBrowser 中从零开始创建文档
  • Java 中的“实现 Runnable”与“扩展线程”

    从我什么时候开始使用线程Java 我找到了这两种编写线程的方法 With 实施Runnable public class MyRunnable implements Runnable public void run Code Started
  • 使用 Rcpp 和 OpenMP 在 R 中实现多线程和 SIMD 矢量化 Mandelbrot

    As an OpenMP Rcpp性能测试 我想检查使用最直接和最简单的方法在 R 中计算 Mandelbrot 集的速度有多快Rcpp OpenMP执行 目前我所做的是 include
  • 在多个线程中添加和删除时 List 中的 null 值

    我知道 C System Collections Generic List 对象不是线程安全的 但我想知道为什么这段代码会生成空值 Task Run gt for var i 0 i lt 10 i var str Test i list
  • Delphi 生成的 Dylib 在 OSX 上的可靠部署

    我想在 OSX 上部署一个 dylib 它是用 Delphi 创建的 这个 dylib 应该是可由第三方应用程序加载 这看起来像是一个重复的问题 但经过大量搜索后 我找不到答案 这和这个是同一个问题 https forums embarca
  • 多线程:您在什么时候创建了太多线程?

    我正在开发一个多线程应用程序 该应用程序最初是单线程 后来扩展到多线程以实现性能提升 我有一个主线程 它将工作分成更小的块 并将其卸载到处理这些块的工作线程 此部分使用信号量进行控制 以在任何时间仅允许 X 个工作线程 工作线程生成数据块
  • 多个用户级线程堆栈的内存

    我想了解用户级线程堆栈的内存如何保存在内存中 我认为所有堆栈都会从页面边界开始 我是对的吗 用户级线程库如何确保某个线程的堆栈不会增长并与其他线程的连续页面边界堆栈重叠 因为所有堆栈页面都是连续的 如果您坚持使用连续的堆栈 那么是的 为单独
  • 应用程序需要很长时间才能同步线程(或根本不同步)

    我在 Delphi XE5 iOS 和 Android 中使用 REST 组件 我目前正在通过 iOS 模拟器进行测试 我的应用程序often挂在我的代码中的以下行 R Request Execute 经过一些调试后 我发现它特别挂在 RE
  • 如何使用 LiveBindings 在 TStringGrid 中显示超过 200 行?

    我有一个TDataSource这是由一个支持TClientDataset绑定到一个TStringGrid 我通过右键单击网格并选择 Link to DB Datasource 然后选择数据源 这为我设置了 LiveBindings 当我运行

随机推荐

  • Cordova 的 FileTransfer 写入错误(代码 1)

    我正在使用 Android 版 Cordova 4 2 0 我有一些麻烦要解决文件传输插件 https github com apache cordova plugin file transfer好好工作 我认为有一个书写错误 except
  • 遗传算法中的轮盘赌选择。需要先对人口进行排序吗?

    在遗传算法中 当使用轮盘赌选择方法选择交叉成员时 是否需要首先按适应度等级对群体进行排序 可能性似乎是 首先按适应度升序对人口进行排序 按适应度降序对人口进行排序 不要对人口进行排序 让轮盘赌球落到它可能落下的地方 我认为无论哪种方式排序都
  • Xamarin.Android Intellisense 无法在 Visual Studio 2010 中工作

    我正在 Visual Studio 2010 中测试 Xamarin Android 并注意到在处理 Android 布局 axml 文件时没有 Android Intellisense 但是 当我处理 cs 文件时 我确实获得了 Andr
  • 在 Ionic 3 中定义模型的正确方法

    在 Ionic 3 中使用 getter 和 setter 定义模型的正确方法是什么 我跟着这个 export class ItemModel private name string constructor private n string
  • 封装 Ruby 函数

    我希望能够完全透明地包装任何 Ruby 过程 包括我自己没有编写源代码的过程 并记录其执行时间 my proc 也就是说 我想创建一个调用的过程my proc保存 上下文 接收者 论点 块 并打印出调用时的执行时间 例如 my proc p
  • 为什么 C# 中基类规范的含义不能递归地依赖于自身?

    以下 C 代码无法编译 public class A public interface B public class C A C B Error given here The type name B does not exist in th
  • WebResource.axd 和 ScriptResource.axd 加载时间超过 1 分钟

    我有个问题 有时 WebResource 和 ScriptResource 需要很长时间才能加载 超过 1 分钟 我们在一个集群中有多个节点 请注意 如果您在出现此问题之前打开了浏览器会话 则 axd 文件加载速度相当快 但新会话加载这些文
  • Spring数据休息@ManyToOne字段不以json形式出现

    我正在使用 Spring Boot Spring Data JPA 和 Spring Data Rest 技术开发一个 Web 项目 我能够成功设置所有内容并能够获取简单 POJO 的 JSON 我自定义了两个类以具有 OneToMany
  • 内联函数中 __LINE__ 的行为

    我有一个将行号和文件名传递给错误处理程序的宏 define SYSTEM FAILURE error code comment System Failure error code comment LINE FILE 如何将 LINE 在内联
  • Spring Rest API 和身份验证的自定义错误对象

    我有一个 Spring Boot Rest API 项目 我正在考虑如何更改从 Spring Boot 返回的默认错误对象 UseCase token api无需认证即可调用 其他api则通过传递token来调用 swagger UI 需要
  • 为什么我不应该混合使用制表符和空格?

    我经常读到 我不应该在 Haskell 中混合使用制表符和空格 或者我根本不应该使用制表符 为什么 问题是双重的 首先 Haskell 对缩进敏感 例如以下代码无效 example a b where a Hello b World 两个绑
  • 像表格一样格式化 Java 输出

    我试图以类似表格的格式输出有关我的程序存储的学生的信息 因为 t 并不总是提供正确的间距 为了做到这一点 我遇到了这个问题 https stackoverflow com a 2745239 1692226并尝试启用类似的解决方案 但是 当
  • 反应图不可见

    遵循projectstorm react diagrams中的安装指南docs https projectstorm gitbooks io react diagrams docs Getting 20Started html 我遇到图表无
  • R:从决策树中提取规则

    我正在使用 R 编程语言 最近 我读到了一种名为 强化学习树 RLT 的新决策树算法 据说它有可能将 更好 的决策树适合数据集 该库的文档可在此处找到 https cran r project org web packages RLT RL
  • Azure PageBlob 上传新文件:x-ms-blob-content-length 错误

    我正在尝试编写一个简单的 python 代码来将文件上传到 Azure PageBlob 我不确定我应该指定什么x ms blob content length因为我不断收到错误 文档 https learn microsoft com e
  • sessionStorage 中的 JWT 令牌 vs cookie?

    Stormpath 有很多博客文章讨论如何使用 cookie 来存储 JWT 而不是 sessionStorage localStorage https stormpath com blog where to store your jwts
  • C++中的图轴校准

    我正在二维图表中绘制一些浮点数据 我需要将图表的轴校准为看起来整洁的小单位 显然 这个单位根据数据的大小而变化 我正在尝试找到一种将轴划分为漂亮数字的好方法 例如 如果我的数据来自 1 3345 至 5 882 可以以 1 0 或 0 5
  • 如何根据父表自动更新子表中的列值?

    我的用户访问网络应用程序架构以两种方式分开 经理表 列 权限 员工表 列 权限 允许 其中 Manager 是超级管理员帐户 将用于订阅 我们的服务基于套餐类型 例如 基本 银 金 对于员工 该帐户将由经理创建 并且分享相同的 经理特权默认
  • 安装 pyspeckit 时 matplotlib 错误

    在尝试下载 Pyspeckit 一个天文学程序 时 我需要获取 matplotlib 才能使其工作 然而 当我尝试安装 matplotlib 时 cygwin 给了我错误 In file included from lib matplotl
  • 这是等待 Thread.finalization 并保持应用程序响应的正确方法

    实际上我正在使用这段代码并且工作正常 但我想知道这是否是正确的方法 while WaitForSingleObject MyThread Handle 0 WAIT TIMEOUT do Application ProcessMessage