Generic MT safe queue implementation( variable element type) with  user defined memory mgmt apis.