Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
* Unix.sleep et bibliothèque graphique
@ 2000-11-09  6:38 Laure Danthony
  2000-11-10  9:05 ` Sven LUTHER
  2000-11-10 12:47 ` Xavier Leroy
  0 siblings, 2 replies; 3+ messages in thread
From: Laure Danthony @ 2000-11-09  6:38 UTC (permalink / raw)
  To: caml-list

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4499 bytes --]

suite à quelques essais infructeux et de discussions, voici un résumé du pb :
il s'agit de mettre des pauses au milieu de programmes graphiques qui s'éxécutent trop vite

(*mail de Luc Bougé*)

let n = ref 0 in while (not (key_pressed())) do (lineto !n   
!n; n := !n + 1) done;;                                      
                                                             
Ca marche, mais il faut que la fenetre graphique soit        
activee (par exemple en                                      
pointant dessus).                                            
                                                             
                                                             
J'ai fait quelques essais avec sleep. Je produis d'abord un  
toplevel par##                                               
                                                             
        ocamlmktop -o myocaml graphics.cma unix.cma          
                                                             
1) Le programme suivant marche bien.                         
                                                             
open Graphics;;                                              
open Unix;;                                                  
                                                             
while true do                                                
  print_float (time());                                      
  print_newline();                                           
  Unix.sleep 2;                                              
done                                                         
;;                                                           
                                                             
2) Par contre, si j'ajoute open_graph "", cela               
ne marche plus.                                              
                                                             
open Graphics;;                                              
open Unix;;                                                  
                                                             
open_graph "";;                                              
                                                             
while true do                                                
  print_float (time());                                      
  print_newline();                                           
  Unix.sleep 2;                                              
done                                                         
;;                                                           
                                                             
et la precedente version ne marche plus non plus, meme si je 
tue la fenetre...                                            
                                                             
Je pense qu'il y a un probleme de compatibilite entre les    
deux                                                         
bibliotheques, car la gestion graphique utilise des threads, 
et                                                           
il y a une autre fonction "thread" dans cette bibliotheque.open Graphics;;                                              
open Unix;;                                                  
                                                             
open_graph "";;                                              
                                                             
while true do                                                
  print_float (time());                                      
  print_newline();                                           
  Unix.sleep 2;                                              
done                                                         
;;                                                           
                                                             
et la precedente version ne marche plus non plus, meme si je 
tue la fenetre...                                            
                                                             
Je pense qu'il y a un probleme de compatibilite entre les    
deux                                                         
bibliotheques, car la gestion graphique utilise des threads, 
et                                                           
il y a une autre fonction "thread" dans cette bibliotheque.

(*fin*)

qu'en pensez vous ? Avez vous une solution ?

Merci de votre collaboration, Laure



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2000-11-10 18:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-11-09  6:38 Unix.sleep et bibliothèque graphique Laure Danthony
2000-11-10  9:05 ` Sven LUTHER
2000-11-10 12:47 ` Xavier Leroy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox