Comments (4)
That's right, cache="async"
means to cache the column (make it non-dynamic), but do the caching asynchronously (in other threads). This is meant for long-running operations so that they're only done once and don't freeze up the interface. z'
should reset the cache manually if you want the results to change.
from visidata.
thanks @saulpw . i didn't know about z'
.
though it feels like caching on
and async on
could be orthogonal. that is, in this case i want cache off
and async on
. that is, asynchrony isn't a cache strategy it is an execution strategy.
from visidata.
Well, that wouldn't work how you want either, because VisiData recalculates its cells on every draw cycle. For a quick demonstration of this, try =random()
. It settles down after a second or so, but then will restart on every command, including movement. If we allowed "cache off and async on" as you suggest, it would spawn dozens of threads for each command.
Of course, we could have it recalc only when the sheet is modified. But the sheet is also considered modified more often than you would think--for instance, when you hide a column. So by default we assume calculations are not expensive, and if they are expensive, then they are expensive enough to be cached until the user triggers a cache reset.
from visidata.
because VisiData recalculates its cells on every draw cycle.
i noticed that the first time i derived a new column with a function that made a REST call over the wire. yikes!
but i memoized the function and that worked well. that was before i saw the cache Column option.
maybe i can get the behavior i am looking for by triggering a resetCache
on some cues.
from visidata.
Related Issues (20)
- [Windows] Error: use_default_colors() returned ERR HOT 1
- system crash opening large (compressed) file
- unable to edit nested json value
- shell-command-on-cell HOT 1
- vdsql: edit cell, copy as sql, dump data...
- `history` parameter of input() is appears ignored HOT 1
- Support Decimal type HOT 1
- vsdql related errors on load and `&`
- Can't open any file HOT 2
- Scientific notation shown for column with large number even when type is string HOT 2
- [texttables] incorrect 'tabulate' module installed with brew HOT 6
- Autodetect file delimiters by scanning the first ten lines HOT 1
- Some issues during first time testing vdsql HOT 5
- [BUG] Opening in interactive shell using `xdg-open` yields `unexpected EOF` HOT 4
- [question] Cannot select rows from CSV file where column value has leading whitespace HOT 2
- [addcol-shell]. Quoted special shell characters are not properly quoted. HOT 2
- [multiline] wordwrap for non-single-width characters (CJK) HOT 4
- [feature request] msgpack and msgpackz loaders HOT 4
- How to get started with writing a Guide HOT 1
- rendering goes wrong (control chars are shown)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from visidata.