Re: Atomic Operations
От | Alvaro Herrera |
---|---|
Тема | Re: Atomic Operations |
Дата | |
Msg-id | 20070110192147.GB15378@alvh.no-ip.org обсуждение исходный текст |
Ответ на | Atomic Operations (Markus Schiltknecht <markus@bluegap.ch>) |
Список | pgsql-hackers |
Markus Schiltknecht wrote: Hi Markus, > what are the assumptions PostgreSQL normally does about atomic > operations? I see sig_atomic_t is used in signal handlers. Additionally, > there is a match for a cmpxchg instruction in some solaris ports code, > but that's about what I found in the source. > > Am I safe assuming that pointer assignments are atomic (on all platforms > PostgreSQL compiles on, that is)? (This is a 'practical advice' from the > GNU Libc Manual) How about other integers smaller or equal in size to > sizeof(sig_atomic_t)? > > I'm asking to make sure I rely on the same guarantees in my code. Currently we rely on TransactionId being atomic; see GetNewTransactionId. It's defined as uint32 somewhere, so I guess you could rely on that. -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support
В списке pgsql-hackers по дате отправления: