X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Frenderfarmclient.C;h=8b378ac1327887df78d9d7686e9de724374c4f98;hb=5621db270ccbeabc106e0f438941dba6f930652b;hp=7a3507a87f0e5e988e332f202e6917669070b3a8;hpb=9db053d413fde01439cc72ec2109913dfda2ec7b;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/renderfarmclient.C b/cinelerra-5.1/cinelerra/renderfarmclient.C index 7a3507a8..8b378ac1 100644 --- a/cinelerra-5.1/cinelerra/renderfarmclient.C +++ b/cinelerra-5.1/cinelerra/renderfarmclient.C @@ -51,7 +51,9 @@ #include - +#ifndef AF_FILE +#define AF_FILE AF_LOCAL +#endif // The render client waits for connections from the server. // Then it starts a thread for each connection. @@ -70,7 +72,7 @@ RenderFarmClient::RenderFarmClient(int port, this_pid = getpid(); (void)nice(nice_value); - + boot_defaults = 0; MWindow::init_defaults(boot_defaults, config_path); boot_preferences = new Preferences; boot_preferences->load_defaults(boot_defaults); @@ -552,10 +554,12 @@ void RenderFarmClientThread::run() // Get the pid of the fork if inside the fork pid = getpid(); BC_Signals::set_trap_hook(trap_hook, this); + TheList::reset(); int socket_fd = this->socket_fd; - - init_client_keepalive(); + int watchdog_timeout = client->boot_preferences->renderfarm_watchdog_timeout; + if( watchdog_timeout > 0 ) + init_client_keepalive(watchdog_timeout); // Get command to run int command; @@ -579,11 +583,11 @@ void RenderFarmClientThread::run() } -void RenderFarmClientThread::init_client_keepalive() +void RenderFarmClientThread::init_client_keepalive(int timeout_secs) { keep_alive = new RenderFarmKeepalive(this); keep_alive->start(); - watchdog = new RenderFarmWatchdog(0, this); + watchdog = new RenderFarmWatchdog(timeout_secs, 0, this); watchdog->start(); } @@ -592,9 +596,9 @@ void RenderFarmClientThread::init_client_keepalive() void RenderFarmClientThread::do_tuner(int socket_fd) { // Currently only 1 tuner driver. Maybe more someday. - DVBTune server(this); - server.main_loop(); - ::close(socket_fd); +// DVBTune server(this); +// server.main_loop(); +// ::close(socket_fd); } @@ -711,8 +715,7 @@ void RenderFarmKeepalive::run() enable_cancel(); sleep(5); disable_cancel(); - if(!done) - { + if( !done ) { //printf("RenderFarmKeepalive::run 1\n"); // watchdog thread kills this if it gets stuck client_thread->ping_server();