BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / bbs-man-dev / #939同步于 1 周前
BBSMan_Dev机器人发帖

能不能获得不同session的变量的值?

jiangjun.
1 周前镜像同步7 回复
转信站: BYR!news.happynet.org!KYXK 两个bbsd进程,能否从一个进程中获得另一个进程中变量的值?
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
tombcy.机器人#1 · 1 周前
转信站: BYR!news.happynet.org!news.newsmth.org!NEWSMTH 保存到文件 然后另一个去读? 【 在 jiangjun@kyxk.net-SPAM.no (昨天是个纪念日~) 的大作中提到: 】 : 两个bbsd进程,能否从一个进程中获得另一个进程中变量的值? : ※ 来源:·BBS 科苑星空站 kyxk.net·[FROM: jiangjun & focus]
jiangjun.机器人#2 · 1 周前
转信站: BYR!news.happynet.org!KYXK 其实是这样的 每个session都有一个全局变量login_start_time 用来记录当前登陆的时间,然后退出的时候根据该时间计算本次在线时间 而时常遇到的问题是,有时id掉线了,另一个进程上来把前一个掉线的踢下去 此时,上次的在线时间就没有被计算 所以我想能否直接读取上一个进程的login_start_time,并且实际上进程号也是有的 如果保存到文件的话,1是很麻烦,2是每次都保存,比较浪费 3是退出的时候还要处理,去掉当前的session 【 在 tombcy@newsmth.net-SPAM.no (tombcy) 的大作中提到: 】 : 保存到文件 : 然后另一个去读?
sstiger.机器人#3 · 1 周前
转信站: BYR!news.happynet.org!news.newsmth.org!NEWSMTH 踢那个登录一般都是用HUP信号吧 那只不过是bbsd HUP信号的处理handler没有处理这个问题而已,改一下就是了。 首先,newmain_single.c system_init()看到SIGHUP的handler是abort_bbs()函数 然后^]一个,跳转到abort_bbs函数定义,发现果然没加在线时间,给加上! done 【 在 jiangjun@kyxk.net-SPAM.no (昨天是个纪念日~) 的大作中提到: 】 : 其实是这样的 : 每个session都有一个全局变量login_start_time : 用来记录当前登陆的时间,然后退出的时候根据该时间计算本次在线时间 : ...................
jiangjun.机器人#4 · 1 周前
转信站: BYR!news.happynet.org!KYXK 有代码么 【 在 sstiger@newsmth.net-SPAM.no (Sex like Software,better when it's free) 的大作中提到: 】 : 踢那个登录一般都是用HUP信号吧 : 那只不过是bbsd HUP信号的处理handler没有处理这个问题而已,改一下就是了。 : 首先,newmain_single.c system_init()看到SIGHUP的handler是abort_bbs()函数 : 然后^]一个,跳转到abort_bbs函数定义,发现果然没加在线时间,给加上! : done
jiangjun2000机器人#5 · 1 周前
转信站: BYR!news.happynet.org!news.uestc.edu.cn!news.newsmth.org!NEWSMTH 明白你的意思了 就是说,实际上所有踢人都是由SIGHUP信号传递给abort_bbs()函数 所以在abort_bbs()函数中加上在线时间的处理就行了,这个处理的就是那个 进程对应的在线时间 另外abort_bbs()的参数可不可以不是0? 因为自杀后在线时间清零,那里也是调用abort_bbs() 用参数是否为零来判断是否记录时间 【 在 sstiger (Sex like Software,better when it's free) 的大作中提到: 】 : 踢那个登录一般都是用HUP信号吧 : 那只不过是bbsd HUP信号的处理handler没有处理这个问题而已,改一下就是了。 : 首先,newmain_single.c system_init()看到SIGHUP的handler是abort_bbs()函数 : ...................
jiangjun2000机器人#6 · 1 周前
转信站: BYR!news.happynet.org!news.newsmth.org!NEWSMTH 但是,abort_bbs()里面 stay = time(0) - login_start_time 这里的login_start_time是否还是踢人的进程里的?还是被踢的那个进程里的? 【 在 jiangjun2000 (jiangjun) 的大作中提到: 】 : 明白你的意思了 : 就是说,实际上所有踢人都是由SIGHUP信号传递给abort_bbs()函数 : 所以在abort_bbs()函数中加上在线时间的处理就行了,这个处理的就是那个 : ...................
fancitron.机器人#7 · 1 周前
转信站: BYR!news.happynet.org!bbsnews.sdu.edu.cn!SJTU 用 SIGHUP 踢人可真怪。为什么不是 SIGINT... 【 在 jiangjun2000@newsmth.net-SPAM.no (jiangjun) 的大作中提到: 】 : 明白你的意思了 : 就是说,实际上所有踢人都是由SIGHUP信号传递给abort_bbs()函数 : 所以在abort_bbs()函数中加上在线时间的处理就行了,这个处理的就是那个 : 进程对应的在线时间 : 另外abort_bbs()的参数可不可以不是0? : 因为自杀后在线时间清零,那里也是调用abort_bbs() : 用参数是否为零来判断是否记录时间 : 【 在 sstiger (Sex like Software,better when it's free) 的大作中提到: 】 : : 踢那个登录一般都是用HUP信号吧 : : 那只不过是bbsd HUP信号的处理handler没有处理这个问题而已,改一下就是了。 : .................(以下省略)