Mercurial > audlegacy-plugins
comparison src/console/Audacious_Driver.cxx @ 1348:d427f353e326
console: new threading model
author | William Pitcock <nenolod@atheme-project.org> |
---|---|
date | Mon, 23 Jul 2007 17:44:21 -0500 |
parents | 6d749f573b3b |
children | 761e17b23e0c |
comparison
equal
deleted
inserted
replaced
1347:76eee61ed25a | 1348:d427f353e326 |
---|---|
308 // stop playing | 308 // stop playing |
309 unload_file(); | 309 unload_file(); |
310 playback->output->close_audio(); | 310 playback->output->close_audio(); |
311 console_ip_is_going = 0; | 311 console_ip_is_going = 0; |
312 g_static_mutex_unlock( &playback_mutex ); | 312 g_static_mutex_unlock( &playback_mutex ); |
313 // TODO: should decode_thread be cleared here? | |
314 g_thread_exit( NULL ); | |
315 return NULL; | 313 return NULL; |
316 } | 314 } |
317 | 315 |
318 static void play_file( InputPlayback *playback ) | 316 static void play_file( InputPlayback *playback ) |
319 { | 317 { |
394 emu = fh.emu; | 392 emu = fh.emu; |
395 fh.emu = 0; | 393 fh.emu = 0; |
396 | 394 |
397 pending_seek = -1; | 395 pending_seek = -1; |
398 console_ip_is_going = 1; | 396 console_ip_is_going = 1; |
399 decode_thread = g_thread_create( play_loop_track, playback, TRUE, NULL ); | 397 decode_thread = g_thread_self(); |
398 play_loop_track( playback ); | |
400 } | 399 } |
401 | 400 |
402 static void seek( InputPlayback * data, gint time ) | 401 static void seek( InputPlayback * data, gint time ) |
403 { | 402 { |
404 // TODO: use thread-safe atomic set | 403 // TODO: use thread-safe atomic set |