如何让 Mathematica 内核暂停以创建外部文件

2024-04-02

是否可以在计算期间暂停 Mathematica 内核?这是一个例子。

Module[{},
       Mathematica code....
       ..........
       ..........
       {
        Calls an external program with some argument
        Needs to wait for an external program to create a file (* How ?*)
        }
       Mathematica code using that file content....
       ...........
       ...........
      ]

我可以想出一个Do[..]循环解决方案不断检查指定目录是否创建了文件。一旦找到文件,它就会读取内容,而 Mathematica 代码的其余部分则处理数据。

有什么优雅的方法来解决这个问题吗?

BR


Try Pause[n],暂停至少 n 秒。

Edit:要使其工作不确定的时间,您需要重复轮询文件系统。FileExistsQ这样做,你会像这样使用它

While[!FileExistsQ[ "filename" ], Pause[1]]

最多也就浪费一秒钟的等待时间。

进一步编辑:您还可以将文件存在性轮询放入批处理文件中,从而释放 Mathematica 会话。例如。创建一个名为 C:\Temp\Test.bat 的批处理文件,其中包含:

@echo off
start /min apame_win64 input
echo Loop commenced %TIME%
:loop
rem wait three seconds
ping localhost -n 3 > nul
if not exist c:\temp\alldone.txt goto loop
rem wait while file is completely written out
ping localhost -n 3 > nul
rem then terminate the process
taskkill /f /fi "imagename eq apame_win64.exe"
exit

并从 Mathematica 调用它:Run["start /min c:\\temp\\test.bat"]

此批处理演示假设 apame_win64 将写出文件 alldone.txt 来完成。

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

如何让 Mathematica 内核暂停以创建外部文件 的相关文章

随机推荐

  • 如何使用带连字符的 ES6 导入

    我真的不知道该怎么做 也不知道如何谷歌 现在我有这个 let source require vinyl source stream 我想更改为导入 但这不起作用 import vinyl source stream as source fr
  • PySNMP:导入错误:没有名为 pyasn1.compat.octets 的模块

    我尝试在 Windows 上使用 PySNMP 但是当我尝试导入 cmdgen 时 我看到以下错误 from pysnmp entity rfc3413 oneliner import cmdgen ImportError No modul
  • GWT 应用程序中使用的 Javascript 通用 clone() 方法

    我试图编写一个通用克隆函数 它应该能够进行真正的深度克隆 我遇到过这个链接 如何在 javascript 中深度克隆 https stackoverflow com questions 4459928 how to deep clone i
  • Electron:计算机重新启动后启动时最小化应用程序

    我在用节点自动启动 https github com Teamwork node auto launch计算机重新启动后启动我的应用程序 此应用程序仅适用于 Windows 我希望该应用程序默认以最小化方式启动 因为它在后台运行 我怎样才能
  • PHP AES 解密工作加密不工作

    所以 我有 4 件中的 3 件在工作 iOS 加密 解密由此而来Link http iphonedevelopment blogspot com 2009 02 strong encryption for cocoa cocoa touch
  • 如何在mongoDB中过滤从hh:mm到hh:mm两个时间之间的数据

    Mongoose var filter filter strBillDate gte new Date req params fromdate lt new Date req params todate return Sales aggre
  • 为什么在 Erlang 中使用 OTP?

    正如问题所说 使用 Erlang 进行开发时 使用 OTP 设计原则会带来什么好处 我正在开发一个仅接收命令并发送响应的服务器 正如 Jonas 所说 OTP 是一组久经考验的设计元素和习惯用法 用于创建容错系统以及其他功能 例如灵活性 实
  • 添加到类内的列表

    我有这门课 public class User private string name public string UserName get set public List
  • 我可以在没有 Visual Studio 的情况下使用 Visual C++ 编译器吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有什么方法可以从命令行使用 Visual C 或 Visual C 编译器而无需安装 Visual Studio 我以前也试过 没找到 寻
  • MongoDB 和 C# Find()

    我有下面的代码 我是 mongodb 的新手 我需要帮助来查找集合中的特定元素 using MongoDB Bson using MongoDB Driver namespace mongo console public class Use
  • 是否可以通过 Elasticsearch 中的映射来更新索引中的现有字段?

    我已经创建了一个索引 它包含我的数据MySQL数据库 我有几个字段string在我的表中 我需要它们作为不同的类型 integer double in Elasticsearch 所以我知道我可以通过mapping如下 mappings m
  • UITableViewController 和 UITextField 键盘

    我有一个带有分组静态 UITableView 的 UITableViewController 我正在故事板上定义静态表视图的单元格 其中一个单元格中有一个文本字段 当调用此文本字段时 键盘会弹出 但是 表视图不会像表视图控制器上通常那样自动
  • 泛型类型不相等

    下面的代码段打印出 类型不相同 为什么 我知道使用interfaceOnMyType GetGenericTypeDefinition 可以解决问题 但为什么我必须这样做呢 class Program static void Main st
  • :active 时的样式按钮与 :hover 不同

    我想制作一个按钮 在悬停时显示背景颜色 在按钮按下时显示没有背景颜色的按钮颜色 这是我当前的代码 windowButton hover background color 1a82b8 windowButton active windowCl
  • 如何在 Cypress 中点击 x 次

    我的网站上有一个对象列表 所有对象旁边都有 添加 按钮 单击第一个 添加 按钮时 将添加该对象 并且该行消失并被下一个对象取代 对象名称相同 在保存之前 我想 click 三次以添加列表中的前三个对象 我怎样才能做到这一点 我知道 clic
  • 带有页眉和页脚的 uiwebview

    我正在尝试添加页眉和页脚 它们都是UIViews 但由于某种原因我的页脚粘在底部 我正在使用KVO查看我的内容大小的方法 我在这里介绍我认为问题所在的方法 void updateLayout Update the frame of the
  • 如何在aws lambda中添加mecab库

    我正在尝试将 mecab 库添加到 aws lambda 层 但它不起作用 我想要的是标记日语和韩语 标记化就足够了 这就是我所做的 我参考了这个网站 https towardsdatascience com how to install
  • 使用字符串输入引用模型

    假设我希望创建一个可以使用 type string 和 id int 查询所需对象的页面 query type people id 1 会来接我 人物查找 1 whereas 查询 类型 城市 id 123 会来接我 城市查找 123 但是
  • MPI 是否提供预处理器宏?

    MPI 标准是否提供了预处理器宏 因此如果我的 C C 代码由支持 MPI 的编译器编译 它可以分支吗 就像是 OPENMPOpenMP 的宏 根据MPI标准 http www mpi forum org docs mpi 3 0 mpi3
  • 如何让 Mathematica 内核暂停以创建外部文件

    是否可以在计算期间暂停 Mathematica 内核 这是一个例子 Module Mathematica code Calls an external program with some argument Needs to wait for