在可可中处理来自 MIDIReadProc 的传入 MIDI 信号的最佳策略

2024-02-20

我必须移动一些NSSlider通过硬件MIDI控制器,我编写了一个MIDI学习程序来将硬件光标分配给NSSlider(的子类),上面就没有问题了。里面MIDIReadProc,我负责移动NSSlider这取决于传入的控制和值,但现在当我移动硬件光标时,滑块可以移动一个时间,就像移动光标停止其他光标一样。

我的问题是,处理光标同时移动的最佳策略是什么? 1.我应该使用单独的线程来处理吗? 2.我应该有一个吗FIFO的数据结构MIDIPacket并将其处理出来MIDIReadProc(有一些并发分离的进程)?

我对我的英语感到抱歉。 感谢您的关注。

a.


你不应该在里面做任何UI同步MIDIReadProc打回来。

此回调是从高优先级实时线程调用的,因此您必须避免在其中执行任何可能“太长”的操作。

正如您所说,您可以使用 FIFO 并在另一个线程(例如主线程)中处理它。

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

在可可中处理来自 MIDIReadProc 的传入 MIDI 信号的最佳策略 的相关文章

随机推荐

  • C++ 流作为成员变量

    我有一个 C 类 我想保存一个用于日志记录的流 在构造对象之后应该能够设置 并且可能重置 流 应该可以将流设置为std cout 或者作为记录到文件的文件流 或者作为字符串流 它只是忽略数据 a dev null各种各样的 无论如何 它应该
  • 如何创建更复杂的 Lucene 查询字符串?

    这个问题是从this https stackoverflow com questions 532365 how to get more out of lucene net问题 我的询问有两个方面 但因为两者都是相关的 所以我认为将它们放在一
  • 为什么 python 在 time.sleep() 之后不打印? [复制]

    这个问题在这里已经有答案了 我用 python 编程已经快两年了 当我看一些旧代码时 我发现了一件非常奇怪的事情 import random sys time try while True print str random randint
  • 在 ajax 请求完成之前,react.js 不会渲染

    我有一个非常简单的React js我需要制作一个组件isomorphic 在服务器上呈现 问题是组件仅在之后才呈现有用的信息ajax请求完成 如下所示 export default React createClass getInitialS
  • 将列表转换为 json 格式 - 快速且简单的方法

    假设我有一个如下所示的对象 MyObject public class MyObject int ObjectID get set string ObjectString get set 我有一个 MyObject 列表 我希望使用 str
  • 同一个表之间多对多的级联删除

    我正在尝试在 SQL Server 中的同一个表之间创建多对多关系 我有一张桌子Object有柱子ObjectId and Name 该关系遵循以下规则 一个孩子可以有多个父母 一个父母可以有很多孩子 ObjectA 可以是 Object
  • Bootstrap 模式 - 隐藏一个然后显示另一个

    我已经使用 jQueryUI 很长时间了 但最近出于美观原因切换到 Bootstrap 我现在正在努力解决我认为是一个简单的问题 并想知道其他更熟悉 Bootstrap 的人是否可以帮助我解决这个问题 我有一个用于动态创建对话框的通用函数
  • 恢复PDF中的图形状态后是否可以绘制路径的笔划?

    我在 PDF 中绘制线条 并希望以 1 1 以外的比例缩放 问题是我得到的笔划看起来像是用书法笔绘制的 在PDF中是否可以以某种方式调整路径大小 恢复图形状态 然后绘制上一个路径的笔划 这就是我在 PDF 中获得书法线条的方法 5 w wi
  • 具有 128 位键的基于时间的字典/哈希表,即超时字典中的值

    我需要制作一个基于时间的字典哈希表 其大小不会无限增长 我所说的 基于时间 具体是指 如果我要在 X 时间添加字典 我希望该项目在 X Y 时间不存在 Y 是超时时间 我愿意将时间存储在字典中或作为键或值的结构 CONTEXT 我收到我们正
  • R:获取给定函数内所有变量和函数的列表和环境(用于并行处理)

    我使用 foreach 进行并行处理 这需要通过列表手动将函数传递到寻址核心的环境 我想自动化这个过程并涵盖所有用例 对于仅使用封闭变量的简单函数来说很容易 然而 一旦要并行处理的函数使用在另一个环境中定义的参数和变量 就会出现问题 考虑以
  • 为什么 IE9 需要元标记来渲染圆角?

    在刚刚发布的IE9中 需要提供meta标签允许CSSborder radius渲染 Why 这个链接 http blogs msdn com b ie archive 2010 06 16 ie s compatibility featur
  • Java process.getInputStream() 没有任何内容可读取,子进程死锁

    我在某些进程包装方面遇到问题 并且该问题仅发生在 Windows XP 中 这段代码在 Windows 7 中完美运行 我真的很困惑为什么 XP 中的流是空的 我也尝试过使用 Process Exec 的 String 版本 但没有什么区别
  • 如何为 PDF 数据指定一个文件名,以便用户在 Swift 中保存

    我将我的 pdfData 交给用户保存 他可以保存到文件并制作文件 但pdf文件的默认名称是 PDF document pdf 如果可能的话 我想要我自己的文件名 也许我可以在将 pdfData 提供给之前更改 pdfData 中的文件名U
  • jquery 代码没有运行

    我想在单击后更改 div1 的颜色 当我点击时div1它必须将其背景颜色更改为 4A6B4C但这并没有发生 请帮忙 谢谢 document ready function div1 click function div1 toggleClas
  • 在 Eclipse 中显示日语字符时出现问题

    我的 Eclipse IDE 显示垃圾字符而不是正确的日语字符 尝试了很多策略 我的编码设置为UTF 8 但仍然没有结果 附上参考截图 任何帮助都会被接受 提前致谢 在您的工作区目录中打开此文件
  • Node js 中的 Values 文件上传器 - 多个文件上传

    我在用着值 ajax 文件上传器 http valums com ajax upload 我的nodejs服务器端如下所示 fileStream fs createWriteStream dirname public images hous
  • 为 Scala 枚举导出 Cats 顺序

    我想要一只普通的猫Order对于斯卡拉的Enumeration 我试过 implicit def enumOrder E lt Enumeration V lt E Value cats Order V new cats Order V d
  • 在discord.py中调用on_member_update时如何访问member?

    我正在尝试创建一个不和谐的机器人 一旦成员离线 不可见 该机器人就会为该成员添加特定的角色 这是我的代码 bot event async def on member update before after if str before sta
  • 如何防止用户关闭我的 C# 应用程序?

    如何用C 制作非封闭的应用程序 我想禁用表单的 X 按钮并防止 Windows 任务管理器关闭它 我知道防止表单关闭的一种方法是处理FormClosing事件 但如何防止任务管理器关闭它 不 无法阻止任务管理器关闭您的应用程序 任务管理器可
  • 在可可中处理来自 MIDIReadProc 的传入 MIDI 信号的最佳策略

    我必须移动一些NSSlider通过硬件MIDI控制器 我编写了一个MIDI学习程序来将硬件光标分配给NSSlider 的子类 上面就没有问题了 里面MIDIReadProc 我负责移动NSSlider这取决于传入的控制和值 但现在当我移动硬