java-forum.org
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org > Java - Programmierung > Java Basics - Anfänger-Themen

Java Basics - Anfänger-Themen Fragen ausschließlich zu Java-Grundlagen von Ein- und Umsteigern

Antwort    
Themen-Optionen Thema durchsuchen Ansicht
Alt 28.01.2010, 12:51   #1 (permalink)
Benutzer
double
 
Registriert seit: 12.06.2009
Beiträge: 74
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
Standard ProcessBuilder Timeout setzten

Hallo zusammen hab mal wieder eine frage und denke das die wirklich oft gestellt wird in verbindung mit dem Processbuilder.

wie kann ich einem Processbuilder einen Timeout geben.
Habe scripte die ausgeführt werden über einen Process, nun soll allerdings nur 50 sekunden auf diesen proCess gewartet werden.hat er länger als 50 sekunden keine rückmeldung gegeben so soll er den aktiven abbrechen.
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 public synchronized int executeFile(File f)
 {
    .........................
 
            p=new ProcessBuilder(f.getAbsolutePath());
        System.out.println(f.getName());
        Process pro=null;
        InputStream es=null;
        InputStreamReader ir=null;
        try 
        {
            StringBuilder builder = new StringBuilder();
            pro = p.start();
            try 
            {
                pro.waitFor();
                pro.destroy();      //hier ein Timeout 50 sekunden
            } 
            catch (InterruptedException e){e.printStackTrace(); return 0;}
            if(pro.exitValue()==1)
            {
                .......
            }
            else 
            {
                ........
            }
            es = pro.getErrorStream();
            System.out.println("ES="+es);
            ir = new InputStreamReader(es);
            char[] buf = new char[1024];
            int i=0;
            while((i=ir.read(buf))!=-1)
            {
            builder.append(buf,0,i);
            }
        } 
        catch (IOException e) 
            {
                 ..........................
            }
        finally
        {
                if(pro!=null)pro.destroy();
                try {
                if(pro!=null)pro.waitFor();
                } catch (InterruptedException e1) {e1.printStackTrace();}
                if(f!=null || f.exists())f.deleteOnExit();
    
                try 
                {
                    if(ir!=null)ir.close();
                    if(es!=null)es.close();
                } catch (IOException e) {e.printStackTrace();}
            
        }
       ...........................
 }
__________________
Sind es Gefühle die uns leiten oder leiten wir die Gefühle.
java66 ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort    

Lesezeichen

Latex Maths & Physics Editor ...

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
upnp Device-Discovery im Netzwerk Mufasa Netzwerkprogrammierung 5 27.07.2009 14:23
Runtime.exec mit Timeout Krabat Allgemeine Java-Themen 5 17.04.2009 09:53
ProcessBuilder neuland Java Basics - Anfänger-Themen 4 07.02.2008 11:45
Socket Kaladial Netzwerkprogrammierung 14 17.09.2007 13:52
ProcessBuilder - Exception friedak Allgemeine Java-Themen 2 19.05.2007 10:13


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:38 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de