Spinning Pinwheel
   HOME

TheInfoList



OR:

The spinning pinwheel is a type of
throbber A throbber, also known as a loading icon, is an animated graphical control element used to show that a computer program is performing an action in the background (such as downloading content, conducting intensive calculations or communicating w ...
or variation of the mouse pointer used in
Apple An apple is an edible fruit produced by an apple tree (''Malus domestica''). Apple fruit tree, trees are agriculture, cultivated worldwide and are the most widely grown species in the genus ''Malus''. The tree originated in Central Asia, wh ...
's
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
to indicate that an application is busy. Officially, the ''macOS Human Interface Guidelines'' refers to it as the spinning wait cursor, but it is also known by other names. These include but are not limited to the spinning
beach ball ''Beach Ball'' is a 1965 American beach party movie starring Edd Byrnes and partly financed by Roger Corman.Ed. J. Philip di Franco, ''The Movie World of Roger Corman'', Chelsea House Publishers, 1979, p. 145 It features appearances by The Supre ...
, the spinning wheel of death, the spinning beachball of death, or the Ferris wheel of death.


History

A
wristwatch A watch is a portable timepiece intended to be carried or worn by a person. It is designed to keep a consistent movement despite the motions caused by the person's activities. A wristwatch is designed to be worn around the wrist, attached by ...
was the first wait cursor in early versions of the
classic Mac OS Mac OS (originally System Software; retronym: Classic Mac OS) is the series of operating systems developed for the Macintosh family of personal computers by Apple Computer from 1984 to 2001, starting with System 1 and ending with Mac OS 9. The ...
. Apple's
HyperCard HyperCard is a software application and development kit for Apple Macintosh and Apple IIGS computers. It is among the first successful hypermedia systems predating the World Wide Web. HyperCard combines a flat-file database with a graphical, fl ...
first popularised animated cursors, including a black-and-white spinning quartered circle resembling a
beach ball ''Beach Ball'' is a 1965 American beach party movie starring Edd Byrnes and partly financed by Roger Corman.Ed. J. Philip di Franco, ''The Movie World of Roger Corman'', Chelsea House Publishers, 1979, p. 145 It features appearances by The Supre ...
. The beach-ball cursor was also adopted to indicate running script code in the
HyperTalk HyperTalk is a discontinued high-level, procedural programming language created in 1987 by Dan Winkler and used in conjunction with Apple Computer's HyperCard hypermedia program by Bill Atkinson. Because the main target audience of HyperTalk ...
-like
AppleScript AppleScript is a scripting language created by Apple Inc. that facilitates automated control over scriptable Mac applications. First introduced in System 7, it is currently included in all versions of macOS as part of a package of system automa ...
. The cursors could be advanced by repeated HyperTalk invocations of "set cursor to busy". Wait cursors are activated by applications performing lengthy operations. Some versions of the Apple Installer used an animated "counting hand" cursor. Other applications provided their own theme-appropriate custom cursors, such as a revolving
Yin Yang Yin and yang ( and ) is a Chinese philosophical concept that describes opposite but interconnected forces. In Chinese cosmology, the universe creates itself out of a primary chaos of material energy, organized into the cycles of yin and ya ...
symbol,
Fetch Fetch may refer to: Books * ''Fetch'', a 2012 book by Alan MacDonald and David Roberts * ''The Fetch'', a 2006 book by Chris Humphreys * ''The Fetch'', a 2009 book by Laura Whitcomb * ''The Fetch'', a 1991 book by Robert Holdstock * ''Fazbear ...
's running dog, Retrospect's spinning tape, and
Pro Tools Pro Tools is a digital audio workstation (DAW) developed and released by Avid Technology (formerly Digidesign) for Microsoft Windows and macOS. It is used for music creation and production, sound for picture (sound design, audio post-productio ...
' tapping fingers. Apple provided standard interfaces for animating cursors: originally the Cursor Utilities (SpinCursor, RotateCursor) and, in
Mac OS 8 Mac OS 8 is an operating system that was released by Apple Computer on July 26, 1997. It includes the largest overhaul of the classic Mac OS experience since the release of System 7, approximately six years before. It places a greater emphasis on ...
and later, the
Appearance Manager The Appearance Manager is a component of Mac OS 8 and Mac OS 9 that controls the overall look of the Macintosh graphical user interface widgets and supports several themes. It was originally developed for Apple Computer, Apple's ill-fated Copla ...
(SetAnimatedThemeCursor).


From NeXT Step to MacOS X

NeXTStep 1.0 used a
monochrome A monochrome or monochromatic image, object or palette is composed of one color (or values of one color). Images using only shades of grey are called grayscale (typically digital) or black-and-white (typically analog). In physics, monochrom ...
icon resembling a spinning magneto-optical disk. Some NeXT computers included an optical drive which was often slower than a magnetic hard drive and so was a common reason for the wait cursor to appear. When color support was added in NeXTStep 2.0, color versions of all icons were added. The wait cursor was updated to reflect the bright rainbow surface of these removable disks, and that icon remained even when later machines began using hard disk drives as primary storage. Contemporary
CD Rom A CD-ROM (, compact disc read-only memory) is a type of read-only memory consisting of a pre-pressed optical compact disc that contains data. Computers can read—but not write or erase—CD-ROMs. Some CDs, called enhanced CDs, hold both compu ...
drives were even slower (at 1x, 150 kbit/s). With the arrival of Mac OS X the wait cursor was often called the "spinning beach ball" in the press, presumably by authors not knowing its NeXT history or relating it to the hypercard wait cursor. The two-dimensional appearance was kept essentially unchanged from NeXT to
Rhapsody Rhapsody may refer to: * A work of epic poetry, or part of one, that is suitable for recitation at one time ** Rhapsode, a classical Greek professional performer of epic poetry Computer software * Rhapsody (online music service), an online m ...
/
Mac OS X Server 1.0 Mac OS X Server 1.0 is an operating system developed by Apple Computer, Inc. Released on March 16, 1999, it was the first version of Mac OS X Server. It was Apple's first commercial product to be derived from "Rhapsody"—an eventual replacemen ...
which otherwise had a user interface design resembling
Mac OS 8 Mac OS 8 is an operating system that was released by Apple Computer on July 26, 1997. It includes the largest overhaul of the classic Mac OS experience since the release of System 7, approximately six years before. It places a greater emphasis on ...
/ Platinum theme, and through Mac OS X 10.0/Cheetah and Mac OS X 10.1/Puma, which introduced the
Aqua user interface Aqua is the graphical user interface, design language and visual theme of Apple's macOS operating system. It was originally based on the theme of water, with droplet-like components and a liberal use of reflection effects and translucency. Its ...
theme. Mac OS X 10.2/Jaguar gave the cursor a glossy rounded "gumdrop" look in keeping with other OS X interface elements. In OS X 10.10, the entire pinwheel rotates (previously only the overlaying translucent layer moved). With OS X 10.11 El Capitan the spinning wait-cursor's design was updated. It now has less shadowing and has brighter, more solid colors to better match the design of the user interface. The colors also turn with the spinning, not just the texture.


System usage

In single-task operating systems like the original Macintosh operating system, the wait cursor might indicate that the computer was completely unresponsive to user input, or just indicate that response may temporarily be slower than usual due to disk access. This changed in multitasking operating systems such as System Software 5, where it is possible to switch to another application and continue to work there. Individual applications could also choose to display the wait cursor during long operations (and were often able to cancel this display with a keyboard command). After the transition to Mac OS X (
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
), Apple narrowed the meaning of the wait cursor. The display of the wait cursor was only able to be controlled by the operating system, not by the application. This could indicate that the application was in an
infinite loop In computer programming, an infinite loop (or endless loop) is a sequence of instructions that, as written, will continue endlessly, unless an external intervention occurs ("pull the plug"). It may be intentional. Overview This differs from: * ...
, or just performing a lengthy operation and ignoring events. Each application has an
event queue In computer science, message queues and mailboxes are software-engineering components typically used for inter-process communication (IPC), or for inter- thread communication within the same process. They use a queue for messaging – the ...
that receives events from the operating system (for example, key presses and mouse button clicks); and if an application takes longer than 2 seconds to process the events in its event queue (regardless of the cause), the operating system displays the wait cursor whenever the cursor hovers over that application's windows. This is meant to indicate that the application is temporarily unresponsive, a state from which the application should recover. It also may indicate that all or part of the application has entered an unrecoverable state or an
infinite loop In computer programming, an infinite loop (or endless loop) is a sequence of instructions that, as written, will continue endlessly, unless an external intervention occurs ("pull the plug"). It may be intentional. Overview This differs from: * ...
. During this time the user may be prevented from closing, resizing, or even minimizing the windows of the affected application (although moving the window is still possible in OS X, as well as previously hidden parts of the window being usually redrawn, even when the application is otherwise unresponsive). While one application is unresponsive, typically other applications are usable. File system and network delays are another common cause.


Guidelines, tools and methods for developers

By default, events (and any actions they initiate) are processed sequentially, which works well when each event involves a trivial amount of processing. The spinning wait cursor will appear until the operation is complete. If operation takes long, the application will appear unresponsive. Developers may prevent this by using separate threads for lengthy processing, allowing the application's main thread to continue responding to external events. However, this greatly increases the application complexity. Another approach is to divide the work into smaller packets and us
NSRunLoop
or
Grand Central Dispatch Grand Central Dispatch (GCD or libdispatch), is a technology developed by Apple Inc. to optimize application support for systems with multi-core (computing), multi-core processors and other symmetric multiprocessing systems. It is an implement ...
. * Bugs in applications can cause them to stop responding to events; for instance, an
infinite loop In computer programming, an infinite loop (or endless loop) is a sequence of instructions that, as written, will continue endlessly, unless an external intervention occurs ("pull the plug"). It may be intentional. Overview This differs from: * ...
or a
deadlock In concurrent computing, deadlock is any situation in which no member of some group of entities can proceed because each waits for another member, including itself, to take action, such as sending a message or, more commonly, releasing a lo ...
. Applications afflicted rarely recover. * Problems with the
virtual memory In computing, virtual memory, or virtual storage is a memory management technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine" which "creates the illusion to users of a very l ...
system—such as slow
paging In computer operating systems, memory paging is a memory management scheme by which a computer stores and retrieves data from secondary storage for use in main memory. In this scheme, the operating system retrieves data from secondary storage ...
caused by a spun-down
hard disk A hard disk drive (HDD), hard disk, hard drive, or fixed disk is an electro-mechanical data storage device that stores and retrieves digital data using magnetic storage with one or more rigid rapidly rotating platters coated with magnet ...
or disk read-errors—will cause the wait cursor to appear across multiple applications, until the hard disk and virtual memory system recover.
Instruments Instrument may refer to: Science and technology * Flight instruments, the devices used to measure the speed, altitude, and pertinent flight angles of various kinds of aircraft * Laboratory equipment, the measuring tools used in a scientific lab ...
is an application that comes with the Mac OS X Developer Tools. Along with its other functions, it allows the user to monitor and sample applications that are either not responding or performing a lengthy operation. Each time an application does not respond and the spinning wait cursor is activated, Instruments can sample the process to determine which code is causing the application to stop responding. With this information, the developer can rewrite code to avoid the cursor being activated. Apple's guidelines suggest that developers try to avoid invoking the spinning wait cursor, and instead suggest using other
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
indicators, such as an asynchronous
progress indicator A progress indicator is an element of a command-line interface, a textual user interface, or a graphical user interface that is intended to inform the user that an operation is in progress, to reassure that the system is not hung or waiting for ...
.


Alternate names

The spinning wait cursor is commonly referred to as The (Spinning) ''x'' (of Death/Doom). The most common words or phrases ''x'' can be replaced with include: * Disk * (Beach) Ball * (Rainbow) wheel * (Rainbow) Pinwheel * Pizza *Pie * Marble *Lollipop


See also

*
Windows wait cursor The Windows wait cursor, informally the Blue circle of death (known as the hourglass cursor until Windows Vista) is a cursor that indicates that an application is busy performing an operation. It can be accompanied by an arrow if the operation is ...
*
Pointer (user interface) In human–computer interaction, a cursor is an indicator used to show the current position on a computer monitor or other display device that will respond to input from a text input or pointing device. The mouse cursor is also called a pointer ...


Notes


References


External links


Pointers in macOS
from Apple's website.

Excerpt from “Troubleshooting Mac OS X” book where there are some information on how to deal with Spinning Wait Cursor problems. {{DEFAULTSORT:Spinning Wait Cursor Computer errors MacOS