shmget() - nevrací platný identifikátor

HackForum

shmget() - nevrací platný identifikátor#
mam přibližně takovýto kod:

if( shmid = shmget( IPC_PRIVATE, M_smemsize * sizeof(int), IPC_CREAT | 077 ) < 0 )
perror( "shmget error" );
/*if( shmid = shmget( IPC_PRIVATE, M_smemsize * sizeof(int), IPC_CREAT | 077 ) < 0 )
perror( "shmget error" ); */
if( shmptr2 = (char * ) shmat( shmid, 0, 0 ) == ( void * ) -1 )
perror( "shmat error" );


když volám shmget() jen jednou (se zakomentovaným druhým voláním), shmat vratí chybu "Identifier removed" (první shmget žádnou chybu nehlásí, ale myslím že vrací nulu -- v maluálu jsem se o této situaci nic nedočetl), když ale druhé volání shmget odkomentuji, vrátí už platný identifikátor, který už shmat vezme a vše funguje jak má.... nevíte proč to nefunguje napoprvé?

----------
Get enlightened!
(odpovědět)
mr.Crow | E-mail | Website27.4.2008 16:56
re: shmget() - nevrací platný identifikátor#
jé, už to vidím, omlouvám se, já nejsem doma a ten kod píšu vzdáleně přes ssh ve vimu a nejsem na vim tolik zvyklý a spoustu věcí přehlížím...

schválně, kdo první najde, kde mám chybu? :-) něco mi tam chybí...

----------
Get enlightened!
(odpovědět)
mr.Crow | E-mail | Website27.4.2008 17:28
re: shmget() - nevrací platný identifikátor#
zajimalo by me jak priorita operatoru souvisi s vimem a co si slibujes od 077...
(odpovědět)
prc | 213.211.51.*27.4.2008 19:32
re: shmget() - nevrací platný identifikátor#
nevšiml jsem si toho, že by tam měly být závorky. Věřím si, že kdybych to psal v Kate, všimnul bych si toho.

1) 077 jsem ani napsat nechtěl, je to chyba vzniklá při přepisování
2) "přibližně takovýto kod"... (toto jsem sem přepsal jen pro ukázku)

----------
Get enlightened!
(odpovědět)
mr.Crow | E-mail | Website27.4.2008 19:48
re: shmget() - nevrací platný identifikátor#
co vyhraju? :D
(odpovědět)
_( | )_ | 85.132.197.*27.4.2008 18:03
re: shmget() - nevrací platný identifikátor#
ty nemáš právo účasti, protože ty znáš správnou odpověď :-D

----------
Get enlightened!
(odpovědět)
mr.Crow | E-mail | Website27.4.2008 18:38
re: shmget() - nevrací platný identifikátor#
:-(
(odpovědět)
_( | )_ | 85.132.197.*27.4.2008 19:11

Zpět
 
 
 

 
BBCode