Re: Quit and Restart kernel quickly?
- To: mathgroup at smc.vnet.net
- Subject: [mg127305] Re: Quit and Restart kernel quickly?
- From: Ralph Dratman <ralph.dratman at gmail.com>
- Date: Sun, 15 Jul 2012 04:27:27 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <20120714053229.16A18687A@smc.vnet.net>
Bill, As a possible supplement or alternative to CleanSlate, I use the following code near the top of a notebook: (* Limit a memory-consuming option. *) $HistoryLength = 0; (*-----*) (* The following interrupts on any message! *) messageHandler = If[Last[#], Interrupt[]] & ; Internal`AddHandler["Message", messageHandler]; (*-----*) If[True,(* Bring back in all the saved results from the fully \ evaluated file, that is, a prior evaluation of this file. *) (* The code that performs the \ save is at the bottom of this file. *) theSavedResultsFileName = StringReplace[NotebookFileName[], ".nb" -> ".mx"]; If[StringQ[FindFile[theSavedResultsFileName]], Get[theSavedResultsFileName]] ] Interrupt[];(* Pause after reloading symbols. *) Then somewhere below that, usually near the bottom of the notebook, I add: Interrupt[];(* Pause before saving symbols. *) (* The following saves ALL globals -- not necessary. *) saveName = StringReplace[NotebookFileName[], ".nb" -> ".mx"] DumpSave[saveName, "Global`"]; Saving all the globals is not always the best way to do this. Rather, replace "Global`" with a specific list of symbols whose value you want restored from the prior session. Good candidates are variables that take a long time to calculate. Ralph On Sat, Jul 14, 2012 at 1:32 AM, Bill Rowe <readnews at sbcglobal.net> wrote: > On 7/13/12 at 2:54 AM, mstankus at gmail.com wrote: > >>Is there a way to quit and restart the kernel quickly? I would like >>to do this without having to use the menu twice. > > Evaluating Quit[] will stop the kernel. Restarting the kernel > can be done by evaluating pretty much anything else. > > Note, if your purpose in quitting the kernel is to reset your > session to its initial state, take a look at the package > Utilitcries`CleanSlate`. After this package is loaded you can > evaluate CleanSlate[] to reset your session to the state that > existed at the time the CleanSlate package was loaded. > > Using CleanSlate to reset your session can be faster than > quitting and restarting the kernel particularly if you have > added several things in the init.m file the kernel executes as > it starts. Additionally, CleanSlate offers finer control on > resetting things. For example you could do > > several computations > <<Utilities`CleanSlate` > more computations > CleanSlate[] > > This would reset your session state so that variables assigned > values, functions etc created during the "several computations" > are left intact while those created during "more computations" > are removed. In contrast, quitting the kernel would remove everything.
- References:
- Re: Quit and Restart kernel quickly?
- From: Bill Rowe <readnews@sbcglobal.net>
- Re: Quit and Restart kernel quickly?