2021年2月20日腾讯WXG实习一面凉经
一、基础考察:
- Java,用new申请了一段内存空间,如果kill这个进程,申请的地址会不会被系统回收?
答:操作系统会自动释放的,使用new分配的空间是他配在一个堆上的,而程序退出时操作系统会回收该进程所有堆的空间(windows),除非你有程序挂死了。
Ps:
1、栈区(stack)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
2、堆区(heap) — 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。
3、会释放,除了其他进程还在的情况。 - Accept是在TCP三次握手的哪一个阶段,握手是调用底层哪一个系统(程序)。
- 第一次握手:客户端发送syn包(syn=j)到服务器。
- 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个ASK包(ask=k)。
- 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1)。
- 三次握手完成后,客户端和服务器就建立了tcp连接。这时可以调用accept函数获得此连接。
(Another:服务器在三次握手之前调用accept函数,进入阻塞状态,三次握手之后accept函数返回)。
- SYN泛洪了解吗?
答:百度百科 。 - 情景设计:某一公园中,游客的出园记录比进院记录多一条,怎么样在50G的日志文件中找到这位滞留在公园的游客信息?
大佬帮忙解答。
二、编程题:
三、总结
死的很惨,最后面试官都没给反问机会,直接结束。