Azzera filtri
Azzera filtri

reading a workspace value inside a function

4 visualizzazioni (ultimi 30 giorni)
I used xlsread in a function. now I have another function that uses this function, and that function is used by a script. So xlsread is used 100 of times uselessly and I am getting 'out of memory' error (this maybe is not the main cause of the error). if I take xlsread into the script, the function cannot read the read variable, even it is in the workspace. How do I make the function to use the variable, without making it input variable of the function?
thanks
  10 Commenti
TADA
TADA il 13 Lug 2019
Modificato: TADA il 13 Lug 2019
Yes, unfortunately, memoize was introduced in 2017a.
Actually you don't need to keep a MemoizedFunction object as a persistent variable. memoize manages its own cache persistence.
Are you reading the same file every time?
Asliddin Komilov
Asliddin Komilov il 14 Lug 2019
Modificato: Asliddin Komilov il 14 Lug 2019
yes its the same file, it would be best if I could do it inside the script and make other functions use it. I am not willing to put it in function input because there are many variables used by different functions. But it is already good without 'persistent':
Elapsed time is 0.077645 seconds.
Elapsed time is 1.035841 seconds.
Elapsed time is 0.005850 seconds.
Elapsed time is 1.412184 seconds.
Elapsed time is 0.000608 seconds.
Elapsed time is 1.529667 seconds.
Elapsed time is 0.001081 seconds.
Elapsed time is 1.416243 seconds.
Elapsed time is 0.000831 seconds.
Elapsed time is 1.475994 seconds.
thanks

Accedi per commentare.

Risposta accettata

Asliddin Komilov
Asliddin Komilov il 19 Ago 2019
the solution was the momoizefun, look for details above.

Più risposte (0)

Categorie

Scopri di più su Programming in Help Center e File Exchange

Prodotti


Release

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by