knapsack and worker can copy itself, worker extends thread