使用异步更新用户界面afterEach
和毕竟
这个例子展示了如何更新用户界面计算完成。当你卸下计算工人使用parfeval
,所有用户界面响应,而工人执行这些计算。在本例中,您使用waitbar
创建一个简单的用户界面。
使用
afterEach
每次计算完成后更新用户界面。使用
毕竟
计算完成后更新用户界面。
使用waitbar
要创建一个图处理,h
。当你使用afterEach
或毕竟
,waitbar
图处理功能更新。关于处理对象的更多信息,请参阅处理对象的行为。
h = waitbar (0,“等……”);
使用parfeval
计算随机矩阵的特征值的实部。默认首选项,parfeval
创建一个平行池自动如果不是已经创建。
为idx = 1:10 0 f (idx) = parfeval (@ (n)真实(eig (randn (n))), 1、5 e2);结束
您可以使用afterEach
自动调用功能的结果parfeval
计算。使用afterEach
最大的值来计算后输出数组的每个未来完成。
maxFuture = afterEach (f @max 1);
您可以使用状态
财产获得期货的状态。创建一个逻辑数组的地方状态
房地产的期货f
是“完成”
。使用的意思是
计算完成期货的分数。然后,创建一个匿名函数updateWaitbar
。函数部分等栏的长度变化h
的分数完成期货。
updateWaitbar = @ (~) waitbar(平均({f。州}= =“完成”),h);
使用afterEach
和updateWaitbar
更新后的分数等杆长每一个未来maxFuture
完成。使用毕竟
和删除
关闭后等待酒吧所有的计算都是完整的。
updateWaitbarFutures = afterEach (f updateWaitbar 0);毕竟(updateWaitbarFutures @(~)删除(h), 0);
使用毕竟
和柱状图
显示结果的柱状图maxFuture
毕竟期货完成。
showsHistogramFuture =毕竟(maxFuture @histogram 0);