Multiple instances of an application

minimalistic

Registered
Dudes,

I have a generic issue here... I recently switched from xp to leopard and almost got used to all the most significant differences. However, I think I just realized it's quite impossible to spawn multiple instances of an application (let's say finder) under mac os.

Please someone tell me I'm stupid, because I don't know what to think of this os now.... :)

Some background information - I'm trying to configure shorcuts in quicksilver so that I get a more win-ish shortcut experience (I'm really used to win's ones :) ). That's how I actually discovered this thing :)

Please someone say what's going on here :)

Cheers
 
I know that you used the Finder just as an example. The Finder is not really an app that you just launch when you need it. It runs all the time, and is a basic part of the functionality of OS X (for good and bad, I suppose).
Most apps will be one instance, but may offer multiple independent windows depending on the use. If you need another window for that app, then just open another window (as in a web browser). Open a new document in Word, or another word processor-type app, and you add a window to the display. Some apps operate with only a single window, such as iTunes.

You may get other answers if you explain (with as much detail as you like) exactly what you want to do...
 
I understand the thing with the multiple windows.... It kinda provides the same user experience as spawning multiple instances.

However, I guess those are all sharing the same process and (hence) memory. So it's much less isolated and a potential crash in one of the windows would result in losing all of them...

Otherwise, besides being a bad architectural decision/implementation, I don't find it really as a problem - as I said, the user experience isn't hurt by that (so far).

cheers
 
Yes, all of an app's windows are subject to a crash. On the other hand, it also allows for vastly more efficient use of memory.

I wouldn't call it bad design, but I see where you're coming from. This is one of the fundamental differences between Windows and the Mac OS. You CAN launch multiple instances of an app in OS X, but doing so is not usually a good idea. Mac OS is application-centric, not window-centric.

Having said that, in those cases where you really do need to load a second instance, there are two approaches you can take:

1. Duplicate the application in the Finder, then launch the duplicate.
2. Launch it from Terminal. Here you need to know where to find the actual executable file of an application. Mac OS X apps are usually actually folders. So for example, if you wanted a second instance of Preview, you could do it like this:
Code:
/Applications/Preview.app/Contents/MacOS/Preview &
The "&" at the end tells Terminal to run the process in the background, so you can enter other commands in the Terminal window. You'll still need to keep the window open as long as you want to use Preview, but you won't need 1 Terminal window for every app like you would without the "&".
 
Just to mention it again: It's not really a good idea to copy the Finder and start multiple instances of it. There is A) not really a reason for it and B) problems down the road, since the Finder's automatically updated with software updates, whereas the copies wouldn't be.
 
thanks for the advice :)

btw - could you forward me to some online documentation/articles on the kernel architecture, process model, etc. of mac os (or free bsd, as it seems it's more or less the same).

and yes, I'm coming from a win developer background and want to grasp the core concepts of this os :)
 
There are usually very few instances when the applications in OS X make sense to run in multiple instances. The only ones I've found a business need (for anyone) to use would be debugging the applications you have written for OS X, or other debug, bug testing, or the process of localization of applications. Developer documentation contains more on how you can get multiple instances open but for a non-developer use of applications there probably isn't much need.

I would love to be able to reverse what you want to Windows.. I mean, instead of having 10 processes open for a browser that has 10 browser windows open (each window = 1 instance = wasting memory) just keep one process per application and let that process manage it memory use more effectively.
 
With some applications, you can have multiple windows. Many graphics viewers will open a new window for each new picture that you open with them. If I want more than one Firefox or Finder window, I use Command-n to open another one. With text editors that can handle more than one documet at a time, I cannot make a new window.
 
You can run multiple instances of the same application, although it's a little unorthodox. I wouldn't recommend doing it for Carbon or big apps such as Office or Adobe's apps. You can just copy the application (Alt/Option + Drag the Application to where you want it, or just hit Apple/Command + D) and that will make an exact copy of the application. You can then have more than one of the same application running at once. This probably works best with Cocoa applications.
 
I'm a long-time Windows user who just bought a Mac. Since I haven't figure out how to specify the download folder dynamically, I create a folder called DOWNLOAD as the target for all downloads. After multiple downloads, I would then double-click "Macintosh HD" icon twice to launch two Finder windows to help move files from DOWNLOAD from one Finder window to some other folders in the other Finder window. It's been working without problems so far. Can this Windows mentality cause me problems?
 
Hi Dan,

Which version of Mac OS X are you using?

If it's 10.5 there should be ~/Downloads already.
(~ as for your user home folder)
 
Back
Top