// File: /workspace/github_cpp_makefile_star2_O1/jianxinzhou[P]Smart/./src/testmain.cpp
// Function: main
int main(int argc, char* argv[])
{
	MyConf conf(argv[1]);
//	conf.show();
	ThreadPool apool(conf) ;
	MySocket socket(conf);
	apool.on();
	std::string word ;
	const int len = 1024 ;
	char buf[len];
	int iret ;
	while(true){
	memset(buf, 0, len);
	iret = socket.recv_message(buf, len) ;
	std::cout << "main" << buf <<"len: "<< iret << std::endl ;
	MyTask task(buf,socket.get_addr(), conf);
	apool.allocate_task(task);
	}
	apool.off();
	return 0 ;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x898, %rsp            # imm = 0x898
movq 0x8(%rsi), %rsi
leaq -0x8c0(%rbp), %rdi
leaq -0x240(%rbp), %rdx
callq 0x3120
leaq -0x4c0(%rbp), %rdi
leaq -0x8c0(%rbp), %rsi
callq 0x3b18
leaq -0x8b0(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x383f
callq 0x3280
leaq -0x240(%rbp), %rdi
leaq -0x4c0(%rbp), %rsi
movl $0xc, %edx
callq 0x4198
leaq -0x68(%rbp), %rdi
leaq -0x4c0(%rbp), %rsi
callq 0x42aa
leaq -0x240(%rbp), %rdi
callq 0x4562
leaq -0x78(%rbp), %rax
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
leaq -0x38(%rbp), %r13
leaq -0x8c0(%rbp), %rbx
movq 0x9738(%rip), %r15      # 0xcfd0
leaq -0xf0(%rbp), %r12
movl $0x400, %edx            # imm = 0x400
movq %rbx, %rdi
xorl %esi, %esi
callq 0x3190
leaq -0x68(%rbp), %rdi
movq %rbx, %rsi
movl $0x400, %edx            # imm = 0x400
callq 0x45b0
movl %eax, %r14d
movl $0x4, %edx
movq %r15, %rdi
leaq 0x574f(%rip), %rsi      # 0x9020
callq 0x3310
movq %rbx, %rdi
callq 0x3140
movq %r15, %rdi
movq %rbx, %rsi
movq %rax, %rdx
callq 0x3310
movl $0x5, %edx
movq %r15, %rdi
leaq 0x572a(%rip), %rsi      # 0x9025
callq 0x3310
movq %r15, %rdi
movl %r14d, %esi
callq 0x34a0
movq %rax, %r14
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x3290
movsbl %al, %esi
movq %r14, %rdi
callq 0x3040
movq %rax, %rdi
callq 0x31d0
movq %r13, -0x48(%rbp)
movq %rbx, %rdi
callq 0x3140
leaq (%rax,%rbp), %rdx
addq $-0x8c0, %rdx           # imm = 0xF740
leaq -0x48(%rbp), %rdi
movq %rbx, %rsi
callq 0x497a
movq %r12, %rdi
movq %r13, %rbx
movq -0x64(%rbp), %r14
movq -0x5c(%rbp), %r13
leaq -0xe0(%rbp), %r15
movq %r15, -0xf0(%rbp)
movq -0x48(%rbp), %rsi
movq -0x40(%rbp), %rdx
addq %rsi, %rdx
callq 0x4ce6
movq %r14, -0xd0(%rbp)
movq %r13, -0xc8(%rbp)
leaq -0x288(%rbp), %rax
movq %rax, -0xb8(%rbp)
leaq -0x270(%rbp), %rax
movq %rax, -0xb0(%rbp)
xorps %xmm0, %xmm0
movups %xmm0, 0x38(%r15)
movq $0x0, 0x48(%r15)
movq -0x48(%rbp), %rdi
movq %rbx, %r13
cmpq %rbx, %rdi
je 0x39cf
callq 0x3280
leaq -0x240(%rbp), %rdi
movq %r12, %rsi
callq 0x462a
movq 0x95eb(%rip), %r15      # 0xcfd0
leaq -0x8c0(%rbp), %rbx
movq %r12, %rdi
callq 0x46b6
jmp 0x389f
movq %rax, %r14
leaq -0xf0(%rbp), %rdi
callq 0x46b6
jmp 0x3a22
movq %rax, %r14
movq -0x48(%rbp), %rdi
cmpq %rbx, %rdi
je 0x3a22
callq 0x3280
jmp 0x3a22
jmp 0x3a1f
movq %rax, %r14
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x3a3c
callq 0x3280
jmp 0x3a3c
movq %rax, %r14
movl -0x68(%rbp), %edi
callq 0x3520
jmp 0x3a51
movq %rax, %rdi
callq 0x496c
movq %rax, %r14
leaq 0x9310(%rip), %rax      # 0xcd68
addq $0x10, %rax
movq %rax, -0x168(%rbp)
movq -0x108(%rbp), %rdi
testq %rdi, %rdi
je 0x3a74
callq 0x3280
leaq 0x92a5(%rip), %rax      # 0xcd20
leaq -0x148(%rbp), %rdi
movq %rax, -0x20(%rdi)
callq 0x3470
leaq -0x1a0(%rbp), %rdi
callq 0x3510
leaq -0x1d0(%rbp), %rdi
callq 0x3330
leaq -0x220(%rbp), %rdi
callq 0x6154
leaq -0x238(%rbp), %rdi
callq 0x5bc0
jmp 0x3ac0
movq %rax, %r14
leaq -0x270(%rbp), %rdi
callq 0x586e
leaq -0x288(%rbp), %rdi
callq 0x491e
leaq -0x2b8(%rbp), %rdi
callq 0x58ca
leaq -0x4c0(%rbp), %rdi
callq 0x30c0
jmp 0x3b0f
movq %rax, %r14
leaq -0x8b0(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x3b0f
callq 0x3280
jmp 0x3b0f
movq %rax, %r14
movq %r14, %rdi
callq 0x34b0
nop