[Gauche-devel-jp] Re: Thread 内での open-input-file について

アーカイブの一覧に戻る

mori jn3r-****@asahi*****
2003年 12月 26日 (金) 15:10:57 JST


森です。

先のプログラムを実行して、一回 telnetして Control-C が効かなくなった
状態のプロセスに gdbで attachしました。
デバッガを使ったことが無かったので何か間違えてたらすみません。

(gdb) bt
#0  0x281a1900 in __sys_poll () from /usr/lib/libc_r.so.4
#1  0x281a0e4c in _thread_kern_sched_state_unlock () from /usr/lib/libc_r.so.4
#2  0x281a0811 in _thread_kern_scheduler () from /usr/lib/libc_r.so.4
#3  0x0 in ?? ()
(gdb) info threads
  3 process 79146, thread 3  0x281a020f in _thread_kern_sched () from /usr/lib/libc_r.so.4
  2 process 79146, thread 2  0x281a020f in _thread_kern_sched () from /usr/lib/libc_r.so.4
* 1 process 79146, thread 1  0x281a1900 in __sys_poll () from /usr/lib/libc_r.so.4
(gdb) thread 2
[Switching to thread 2 (process 79146, thread 2)]
#0  0x281a020f in _thread_kern_sched () from /usr/lib/libc_r.so.4
(gdb) bt
#0  0x281a020f in _thread_kern_sched () from /usr/lib/libc_r.so.4
#1  0x281a0a3e in _thread_kern_sched_state_unlock () from /usr/lib/libc_r.so.4
#2  0x281a2919 in pthread_cond_timedwait () from /usr/lib/libc_r.so.4
#3  0x2818a271 in _thread_gc () from /usr/lib/libc_r.so.4
#4  0x2816411c in _thread_start () from /usr/lib/libc_r.so.4
#5  0x0 in ?? ()
(gdb) thread 3
[Switching to thread 3 (process 79146, thread 3)]
#0  0x281a020f in _thread_kern_sched () from /usr/lib/libc_r.so.4
(gdb) bt
#0  0x281a020f in _thread_kern_sched () from /usr/lib/libc_r.so.4
#1  0x281a0a3e in _thread_kern_sched_state_unlock () from /usr/lib/libc_r.so.4
#2  0x281a26b9 in pthread_cond_wait () from /usr/lib/libc_r.so.4
#3  0x2816278d in sem_wait () from /usr/lib/libc_r.so.4
#4  0x280e441a in GC_stop_world () from /usr/local/lib/libgauche.so
#5  0x280db1fc in GC_stopped_mark () from /usr/local/lib/libgauche.so
#6  0x280dafc3 in GC_try_to_collect_inner () from /usr/local/lib/libgauche.so
#7  0x280dbcf9 in GC_collect_or_expand () from /usr/local/lib/libgauche.so
#8  0x280df00b in GC_alloc_large () from /usr/local/lib/libgauche.so
#9  0x280df2d6 in GC_generic_malloc () from /usr/local/lib/libgauche.so
#10 0x280df41a in GC_malloc_atomic () from /usr/local/lib/libgauche.so
#11 0x2809e68a in Scm_MakeBufferedPort () from /usr/local/lib/libgauche.so
#12 0x280a3ff7 in Scm_OpenFilePort () from /usr/local/lib/libgauche.so
#13 0x280c7f49 in stdlib_open_input_file () from /usr/local/lib/libgauche.so
#14 0x280842a2 in run_loop () from /usr/local/lib/libgauche.so
#15 0x280880cf in user_eval_inner () from /usr/local/lib/libgauche.so
#16 0x28088ae6 in Scm_Apply () from /usr/local/lib/libgauche.so
#17 0x2820d066 in thread_entry () from /usr/local/lib/gauche/0.7.3/i386-portbld-freebsd4.9/threads.so
#18 0x280e4d99 in GC_start_routine () from /usr/local/lib/libgauche.so
#19 0x2816411c in _thread_start () from /usr/lib/libc_r.so.4
#20 0x0 in ?? ()

open-input-file 無しでやると thread 3 が無くてあとは同じでした。

いずれの場合も detachしようとすると

Detaching from program: /usr/local/bin/gosh, process 79167, thread 1
ptrace: No such process.

といわれて detachできませんでした。



Gauche-devel-jp メーリングリストの案内
アーカイブの一覧に戻る