Witam,
Jestem inżynierem elektrykiem i piszę program do optymalizacji wartości elementów w obwodzie. Program to może trochę za dużo powiedziane. Jest to skrypt w Scilab (darmowy odpowiednik matlab), który realizuje algorytm genetyczny. Do oceny poszczególnych obwodów używam osobnego programu liczącego rozpływ prądów w tym obwodzie. Skrypt tysiące razy uruchamia ten program "w konsoli". Wszystko działa świetnie do czasu jak nastąpi pewien zbieg okoliczności w wartościach elementów. W obwodzie powstają kosmiczne częstotliwości i program automatycznie zagęszcza krok obliczeniowy. Z tego powodu poszczególne uruchomienia trwają od kilku milisekund (99.9% przypadków) do kilku godzin! Scilab oczywiście czeka aż program zakończy działanie co blokuje cały proces. Nie posiada też narzędzi do radzenia sobie z takimi problemami. Program do rozpływów jest zamknięty i niemodyfikowalny. Musiałby nad nim czuwać inny program. Gdy obliczenia będą trwać dłużej niż 2s proces ma zostać zabity/zamknięty. Mój główny skrypt już sobie poradzi z resztą.
Mój jedyny pomysł to jakiś dodatkowy skrypt na trzy linijki w Basic, który będzie pośredniczył pomiędzy głównym skryptem, a programem. Robiłem coś takiego sto lat temu żeby okno wiersza poleceń było ukryte, ale niewiele pamiętam. A może konsola windows cmd.exe posiada coś o czym nie wiem? Jedyna nadzieja w Was - ekspertach. Będę bardzo wdzięczny za pomoc.
Pozdrawiam