Matlab - waitfor?

 
Vista:

waitfor?

Publicado por cissé (4 intervenciones) el 17/07/2006 19:16:31
Buenas a todos,
me gustaría esperar(detener) un .m de Matlab hasta que se cree un archivo, para una vez creado dicho archivo continuar con el programa .m.
hasta el momento lo realizo mirando cada x tiempo si el archivo se ha creado, pero me gustaría saber si existe algún método para que interrumpir el programa hasta que se cree el archivo.
Alguno de ustedes tiene alguna idea?

Muchísimas gracias!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:waitfor?

Publicado por Edgar Muñoz (62 intervenciones) el 17/07/2006 21:33:51
Puedes utilizar la función fopen, de esta forma.

%código
%código
fid=-1;
while fid=-1
fid= fopen('nombre del archivo');
end
fclose(fid)
fclose
%código
%código

La función fopen devuelve -1 cuando no ha encontrado un archivo para abrir (o cuando se produce un error al abir el archivo)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:waitfor?

Publicado por cissé (4 intervenciones) el 18/07/2006 12:41:29
Es precisamente la manera en que lo hago hasta ahora, pero incluyendo en el bucle un pause(t) para no saturar el Pc mientras no se cree el archivo, y mirar cada t_segundos si se ha creado el archivo. Mi pregunta era si había alguna forma de interrumpir el .m, y que prevalezca la creación de ese archivo a la hora de continuar con el .m. Si alguién tiene idea? Estoy mirnado en simulink (interrupt control) pero no doy con la solución.

Muchas gracias de todos modos Edgar, es gratificante darte cuenta que la gente piensa del mismo modo a la hora de programar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:waitfor?

Publicado por Edgar Muñoz (62 intervenciones) el 18/07/2006 18:57:09
Como lo estás haciendo me parece muy correcto, ¿para que quieres otra forma de hacer lo mismo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:waitfor?

Publicado por cissé (4 intervenciones) el 19/07/2006 10:58:13
Como decía en la respuesta anterior, si dentro del bucle miro continuamente si se ha creado o no el archivo, el programa se está ejecutando y el pc está ocupado; utilizando el pause(t) consigo que mire únicamente en ese instante y el resto esté en pasue (sin consumir recursos), pero con el inconveniente de que puedo perder como máximo ese tiempo t, para salir del bucle.
Puede ser que esté pasando por alto algo básico...
Alguna otra manera de realizar lo mismo?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar