Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/44.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 从Swift(OSX)中的NSTableViewDataSource访问我的数据源(串行端口)的最新方法?_Iphone_Macos_Swift_Serial Port - Fatal编程技术网

Iphone 从Swift(OSX)中的NSTableViewDataSource访问我的数据源(串行端口)的最新方法?

Iphone 从Swift(OSX)中的NSTableViewDataSource访问我的数据源(串行端口)的最新方法?,iphone,macos,swift,serial-port,Iphone,Macos,Swift,Serial Port,我的简单应用程序中有一个NSTableView和一个单独的类SettingsTableSourceDelegate,该类继承自NSTableViewDataSource和NSTableViewDelegate,用于填充和处理表。从本质上讲,表格将根据从微控制器接收到的值填充,表的细节并不重要,但我想知道的是一个更一般的结构问题 从我的SettingsTableSourceDelegate类访问我的串行端口实例,除了(如果可能)单例或将我的串行端口实例存储在app delegate中之外,最好的方

我的简单应用程序中有一个NSTableView和一个单独的类SettingsTableSourceDelegate,该类继承自NSTableViewDataSource和NSTableViewDelegate,用于填充和处理表。从本质上讲,表格将根据从微控制器接收到的值填充,表的细节并不重要,但我想知道的是一个更一般的结构问题

从我的SettingsTableSourceDelegate类访问我的串行端口实例,除了(如果可能)单例或将我的串行端口实例存储在app delegate中之外,最好的方法是什么?考虑到这样一个事实,即我不希望不断地关闭和打开端口,并且NSTableView不是唯一要使用端口的东西(尽管不是同时使用)

理想情况下,我希望表格最初通过串行方式从微控制器中提取其值,然后在内存中的副本上执行对表格的进一步操作,并且仅在单击“保存”按钮时发送回


非常感谢您的时间,我对设计模式不是很感兴趣,而且Swift/OSX编程对我来说是非常新的,所以任何建议都将不胜感激

您应该为串行端口启动一个单独的线程。假设您只显示来自控制器的数据,那么更改表数据源是非常节省的。如果你要改变计数,你需要更小心一点。添加只会延迟,但删除最终会导致表视图访问已删除的条目