Matlab R2020b freezes when closing figure (Intel macOS Big Sur)

141 次查看(过去 30 天)
Matlab R2020b Update 3 always freezes when closing a figure window containing any axes by using the top left closing button.
The operating system I am using is macOS Big Sur 11.1 on an Intel Mac Book Pro from mid-2017. No startup scripts are run.
On my system this can always be reproduced by opening Matlab 2020b and run the following command from the command window
figure; plot(1:10,1:10)
The figure opens as expected but using the red close button on the top left corner to close the window, Matlab instantly freezes and a spinning ball animation is shown. Matlab must be force quit then.
There is no problem closing the figure using the command
close(gcf)
This bug makes working with Matlab completely impossible to me. A similar behaviour could be seen on my system with previous Matlab versions like R2020a on macOS Mojave. But back then the bug was not so easy to reproduce. From time to time when closing a window belonging to Matlab it also froze.
  13 个评论

请先登录,再进行评论。

回答(22 个)

orenams
orenams 2022-1-3
I have the same proboem!

Mario Andrés De los Santos
I'm having the same problem :(

Kazuhiro Maeda
Kazuhiro Maeda 2022-1-29
I wrote a simple script. I hope it helps. I'm not sure this works for M1.
function figure_close_test()
% When you try to close figure windows, MATLAB for Mac sometimes gives you
% the rainbow cursor of death and hangs up. A walkaround is to turn off
% apps that use Mac's Accessibility API. Go to System Preferences >
% Security & Privacy > Privacy > Accessibility and unmark some apps there.
%
% This script is helpful to identify the apps that cause the problem.
%
% (1) Run this script. If it finishes without any problems, you don't have
% the "can't close a figure" issue. Lucky you! If your MATLAB hangs up
% or becomes sluggish, go to (2).
%
% (2) Turn off an app shown in Accessibility and go to (3).
%
% (3) Run this script again. If you finished it without any problems, then
% it is likely that the app you just turned off interferes with MATLAB.
% So, it should be turned off while you use MATLAB (and ask MathWorks
% to fix this long-standing issue). If you got some problems while
% running this script, go back to (2) and turn off another app.
clear all;
close all;
for i = 1 : 10
fprintf('%d: ',i)
for j = 1 : 10
fprintf('%d ',j)
figure;
plot([0,1,2],[0,1,2])
end
close all;
fprintf('--- All figures closed\n')
end
In my case, RescueTime was the one that prevented MATLAB from closing a figure window.
  6 个评论
Jack Addie
Jack Addie 2023-11-11
this worked brilliantly on my M1 2020 mac. Running R2022b incase thats of any use ot anyone. Cheers!
RossMas
RossMas 2024-2-7
Hi, could you please explain better all passages? I went to Accessibility, but did no find any apps to unmark. Thank you

请先登录,再进行评论。


Lakshmanan Swaminathan
I do have the same problem with Matlab_R2020b running on M1 Macbook Pro with macOS Big Sur 11.3.1. Not just closing figures, it freezes in many occasions. And the only way is to force quit and reopen again leading to lose the progress of work.

Radoslav Vargic
Radoslav Vargic 2021-6-28
Matlab 2021a update 3 in BigSur 11.4 has stiil the same problem !!!
  5 个评论
Walter Roberson
Walter Roberson 2021-7-2
Odd, I have never observed it up to R2021a up to Catalina (I have not used my Big Sur system long enough to have an opinion)
Kelly Kearney
Kelly Kearney 2021-7-15
The bug is contingent on other software, so it may not manifest for all users. I'm pretty sure that in my case, it's coming from one of the many videoconferencing apps that I'm using far more these days than in previous years. Keeping those apps functional is a higher priority than running the latest and greatest Matlab, hence my rolling back.

请先登录,再进行评论。


bader
bader 2023-12-20
Make a startup.m file in your matlab path (e.g, User/username/Documents/MATLAB/). And have the following line of code:
set(groot, 'defaultFigureCloseRequestFcn', 'delete(gcf)');

Daniel Lau
Daniel Lau 2021-7-20
From this link, I followed the instructions for giving Matlab full disk access. Seems to have solved the problem.

Chenyang Zhang
Chenyang Zhang 2022-3-24
Go to Mac - System Preferences - Privacy - Accessibility
Try disabling some App here, and find which one cause the conflict to MATLAB. Then this problem can be avoided. As for my case, I disable the Grammarly and then all things go well.
Hope MATLAB can solve this problem.

Abdul Hannan Raja
Abdul Hannan Raja 2021-4-23
I am having this same problem on M1 Macbook Air with apple silicon chip. I have no idea what is causing this issue. I guess i am not alone anymore.
  3 个评论
Peko Wang
Peko Wang 2022-2-14
You are not alone. I have the same problem with my M1 Mac Mini; this post is helpful for me. Specifically, there is a bug caused by some conflict between the Grammarly app and Matlab, but every time you manually close the fig, you need to quit Grammarly, and setting Grammarly not enabled on Matlab is also invalid, which is very inconvenient, so I still use the "close" command.
Bojeong Seo
Bojeong Seo 2022-3-25
@Peko Wang Thank you so much!! I was frastrauted by this issue and just solve the issue by quitting Grammarly app!!

请先登录,再进行评论。


Tahmid Hassan Talukdar
Havint this same problem. Hope MathWorks fixes this soon. I'm unable to do any work due to this.

Dmitry Kabanov
Dmitry Kabanov 2021-7-15
I have the same problem on macos Big Sur 11.4 with Matlab R2021a 9.10.0.1602886 on Intel iMac Pro 2017.
Matlab is unusable as it hangs when I close a figure.

Daniel Lau
Daniel Lau 2021-7-20
I am having this problem too on an Intel Mac Pro 2013 with Matlab R2021a.

Preetham Manjunatha
编辑:Preetham Manjunatha 2022-1-23
Same problem macOS Monterey v12.1. MacBook Pro (15-inch, 2018), Processor: 2.9 GHz 6-Core Intel Core i9 and Memory: 32 GB 2400 MHz DDR4.

Kazuhiro Maeda
Kazuhiro Maeda 2022-1-28
Same here.
MATLAB R2021a
Big Sur 11.6.1
Mac Pro (2019)
After "close all" or clicking the left-top red "x" button of a figure window, a rainbow cursor of death appears and MATLAB hangs up. This happens not always but occasionally. So, it's difficult to find why this happens.
I just read this post and turned off Accessibility Permissions for some apps. I hope this will work. This "Accecibility problem" has been around for years (like this), and I don't understand why MathWorks devs don't fix it.
I think MathWorks should implement a better bug report program (or even telemetery program). If MATLAB hangs up, the bug report dialog doesn't appear. So, they never notice this issue.

Edgar Torres
Edgar Torres 2022-2-7
My Macbook Pro (2019, Intel, Big Sur v.11.6.3) suffers from this issue as well, the "close all" command does work though. Although granting Matlab full disk access to your mac will not work, I already tried it. @MathWorks Support Team really needs to fix this.

Richard So
Richard So 2022-2-20
编辑:Richard So 2022-2-20
I found that downgrading to R2019b resolves the issue. Alt-Tab was the culprit on my end, but I was not willing to close the app just for Matlab. If downgrading still does not help, try using even earlier versions and see if it works.

Preetham Manjunatha
MATLAB R2022a still freezes when the Figure window is closed on macOS 12.3.

Nazyar Mehdishishavan
just by quiting grammerly, my problem was solved

Carl Werner
Carl Werner 2022-3-31
Yes - Grammarly and my window manager app, Rectangle make Matlab lose its mind. The window manager Magnet, also does not coexist well with Matlab.

Qi Wang
Qi Wang 2022-5-6
Same issue for me. Problem solved after I disable the "voice control" in the System Preferences. Hope this helps

Sorinel Oprisan
Sorinel Oprisan 2022-6-3
For me it was Grammarly Desktop.app

Pistachio
Pistachio 2022-7-21
编辑:Walter Roberson 2022-11-17
Same problem for me.
In my case, MATLAB often freezes when closing a number of heavy figures.
The cause of this problem is most probably that MATLAB goes on the next closing process before completing current closing process that takes some time due to the large data set included in the figures. In this case, close each figure by “for” followed by a command such as “disp” and “waitbar”. But “1+1” doesn't work. Though “pause(n)” does work, I don't recommend this, because optimum time is not known. I prefer “waitbar” to “disp” because I don't like a mess in command window, but “waitbar” can be replaced by “disp” or something. Accordingly, I solved this issue by following function.
function closeall
h = findobj('Type','Figure');
I0 = numel(h);
if I0==0
return
elseif I0==1
close(h)
else
msg = ['Closing ' num2str(I0) ' figures.'];
f = waitbar(0,msg);
for i0 = 1:I0
close(h(i0))
waitbar(i0/I0,f, ['Closing ' num2str(I0) ' figures... (' num2str(i0) '/' num2str(I0) ')'])
end
delete(f)
end
end

类别

Help CenterFile Exchange 中查找有关 Desktop 的更多信息

产品


版本

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by