• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Środowisko zabezpieczające

Object Storage Arubacloud
0 głosów
344 wizyt
pytanie zadane 19 kwietnia 2017 w C i C++ przez niezalogowany

Witam, mam program C++, który w pewnym momencie odpala, inny program. Poleceniem system(). Chciałbym teraz, zrobić, takie coś, aby np. po 2 sekundach, mój program automatyczne zamknął ten program. Bo np. czasem ten program działa 5 minut, a i tak nic nie robi. Przydałoby się też, limit pamięci ram, zużywanej przez ten program. 

Pozdrawiam.

komentarz 19 kwietnia 2017 przez JAKUBW Nałogowiec (33,470 p.)
Zabić program możesz tak: http://stackoverflow.com/a/7956651
komentarz 19 kwietnia 2017 przez niezalogowany
Spk, tylko jak kontrolować czas?
komentarz 19 kwietnia 2017 przez CzikaCarry Szeryf (75,340 p.)
Odpalasz nowy wątek, w którym dajesz sleepa na 2 sekundy, a następnie wyłączasz program.
komentarz 19 kwietnia 2017 przez niezalogowany
A mógłbyś podać przykład w kodzie?
komentarz 19 kwietnia 2017 przez CzikaCarry Szeryf (75,340 p.)
Piszess i startujesz wątek tak jak tutaj:

http://stackoverflow.com/questions/266168/simple-example-of-threading-in-c

Tylko w środku funckji dajesz sleep na 2 sekundy i wyłączenie programu zamiast cout.
komentarz 19 kwietnia 2017 przez niezalogowany
Spk, a jak teraz chciałbym zrobił taki coś, program odpalony, jest ten sleep, ale jak program się wcześniej zakończy to wtedy jest ok ?
komentarz 19 kwietnia 2017 przez CzikaCarry Szeryf (75,340 p.)
To wtedy po prostu funkcja nie zadziała :)
komentarz 20 kwietnia 2017 przez JAKUBW Nałogowiec (33,470 p.)
Ale z zabiciem procesu do uważaj, może wywołać niechciane konsekwencje. Lepiej wysłać ,,prośbę" o zamknięcie.
komentarz 20 kwietnia 2017 przez niezalogowany
Tylko, jeszcze chodzi mi o to, że jak program sam się zamknie, to wtedy ma wypisać mój program informację, że program się sam zamknął, a jak nie to, że nastąpiło zamknięcie programu.
komentarz 20 kwietnia 2017 przez CzikaCarry Szeryf (75,340 p.)
To poczytaj co zwraca funkcja zamykająca. Prawdopodobnie w przypadku niepowodzenia zwraca 0, a to już można w ifie wykorzystać.

2 odpowiedzi

0 głosów
odpowiedź 20 kwietnia 2017 przez j23 Mędrzec (194,920 p.)
  1. odpal program funkcją CreateProcess.
  2. funkcją WaitForSingleObject czekasz na zamknięcie aplikacji. Możesz tutaj ustawić timeout.
  3. jeśli nastąpił timeout, użyj TerminateProcess do zamknięcia procesu.
  4. zamykasz uchwyt funkcją CloseHandle.
komentarz 20 kwietnia 2017 przez niezalogowany
Wyszukałem CreateProcess, i wyskakuje mi tylko dla Windows. Niestety, używam linuxa, a w szczególności ta aplikacja będzie na serwerze linuksowych. Nie ma jakiś linukowych zamienników?
komentarz 20 kwietnia 2017 przez j23 Mędrzec (194,920 p.)

Nie znam Linuxa, ale pewnie będziesz musiał pokombinować z funkcjami fork, execl, kill i sleep.

0 głosów
odpowiedź 24 kwietnia 2017 przez niezalogowany
Słyszałem, o narzędziach, rlimit, ulimit. Jak je wykorzystać? Korzystał może ktoś z Was?

Podobne pytania

0 głosów
1 odpowiedź 139 wizyt
pytanie zadane 17 lutego 2021 w HTML i CSS przez AgentTecza Obywatel (1,810 p.)
+1 głos
1 odpowiedź 147 wizyt
pytanie zadane 19 września 2020 w Bezpieczeństwo, hacking przez Maciek2137 Początkujący (270 p.)
0 głosów
2 odpowiedzi 450 wizyt
pytanie zadane 13 czerwca 2017 w C i C++ przez niezalogowany

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...