On Mon, Apr 27, 2009 at 8:21 AM, Evan Martin <e...@chromium.org> wrote:
>
> On Thu, Apr 23, 2009 at 1:35 PM, Nikita Ofitserov <himi...@gmail.com> wrote:
>> Don't try to get pid dynamically, but create on startup in datadir
>> file 'ChromePid' or something like that with pid. Also, create an IPC
>> channel with channel_id equal to pid with forced FIFO mode on POSIX.
>> Current POSIX implementation should be modified to allow this and to
>> store socket in datadir, not in /var/tmp. Then ProcessSingleton check
>> would be simple and crossplatform: find pid file, read pid, connect to
>> channel, send some message and wait for response.
>>
>> This eliminates all differences between platforms in
>> process_singleton_* and chrome_process_util_*.
>
> Having seen the rest of the discussion now, I think a fair summary of this is:
> 1) On Windows, the existing code is cleaner (no extra pid file, cleans
> itself up for free).


Well, on Windows code looks racy, does not work well across multiple
desktops, and probably will create troubles accessing userdata when
same instance is running in different terminal sessions (with same
user account).

Stoyan


> 2) On Mac, they will use a different mechanism for process_singleton.
>
> That still leaves:
>  - Linux process_singleton, process_util
>  - Mac process_util
>
> The Linux process_singleton still needs the socket for being able to
> send commands through (after your change, which I'd still like
> commit), so it's unlikely to change.
>
> That leaves process_util for Linux and Mac, which uses fuser (or
> something similar) and that is a hack.  However, it's only used for ui
> tests, I believe -- it's not needed in normal usage.  I am not opposed
> to (lazily, on a background thread) writing a pid file on Linux,
> though I'd prefer some other solution if one could be found.  Maybe
> it's to just remove the need for ChromeBrowserProcessId() somehow.
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
    http://groups.google.com/group/chromium-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to