FLOCK()
Publicado por chema (74 intervenciones) el 15/05/2003 20:08:40
Estoy usando el siguiente código en mi programa (en un formulario):
----------------------------------------------------
use tabla index tabla shared
if flock()
messagebox(\'se bloqueo la tabla\')
else
messagebox(\'Tabla ocupada\')
endif
------------------------------------------------------
Si intento abrir la tabla desde el mismo programa dos veces mediante dos formularios(es decir, ejecuto la aplicación , que está instalada en un servidor, desde mi ordenador, y abro dos formularios que usan la misma tabla) , en el primer formulario consigo bloquear la tabla, y si abro otro a la vez que también usa dicha tabla, me sale el mensaje de que la tabla está ocupada(hasta aquí todo bien). Pero si ejecuto la aplicación desde dos pcs a la vez, con un ordenador bloqueo la tabla y con el otro, cuando intento usarla, en vez de salirme el mensaje, se queda el ratón con el reloj, es decir, en espera de que la tabla se desbloquee: por qué??
----------------------------------------------------
use tabla index tabla shared
if flock()
messagebox(\'se bloqueo la tabla\')
else
messagebox(\'Tabla ocupada\')
endif
------------------------------------------------------
Si intento abrir la tabla desde el mismo programa dos veces mediante dos formularios(es decir, ejecuto la aplicación , que está instalada en un servidor, desde mi ordenador, y abro dos formularios que usan la misma tabla) , en el primer formulario consigo bloquear la tabla, y si abro otro a la vez que también usa dicha tabla, me sale el mensaje de que la tabla está ocupada(hasta aquí todo bien). Pero si ejecuto la aplicación desde dos pcs a la vez, con un ordenador bloqueo la tabla y con el otro, cuando intento usarla, en vez de salirme el mensaje, se queda el ratón con el reloj, es decir, en espera de que la tabla se desbloquee: por qué??
Valora esta pregunta


0