You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AppleScript实现带超时的文件创建等待及错误提示问题

问题原因

原代码里的with timeout机制失效,核心原因是循环内没有任何延迟操作——AppleScript的超时仅针对会阻塞执行的耗时命令,空循环会快速重复运行,系统根本识别不到需要触发超时。

优化方案

给循环加短暂延迟,让超时机制能正常计时,同时整合错误处理逻辑,去掉冗余代码:

set DossierDeBase to path to desktop as text -- 替换成你的实际基础路径
set SetPNG to DossierDeBase & "pdf-lightroom:set copie.png"

try
    with timeout of 5 seconds
        repeat
            try
                -- 尝试转成alias来检测文件是否存在
                SetPNG as alias
                exit repeat -- 文件存在就跳出循环
            on error
                -- 文件不存在时,等0.5秒再重试,降低CPU占用
                delay 0.5
            end try
        end repeat
        display alert "文件已生成!"
    on error
        -- 超时触发错误,直接提示并退出
        display alert "错误" message "文件未在5秒内生成。" buttons {"确定"} default button 1
        quit
    end try
关键说明
  • delay 0.5:既减少无意义的CPU消耗,又让超时机制能正确统计时间流逝
  • 外层try直接捕获超时错误:不用额外再做一次文件检测,所有逻辑集中在一个块内,结构更简洁
  • 超时后直接触发提示并退出,完全符合需求

内容的提问来源于stack exchange,提问作者Vincent Zorzi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 15:17:39