Copy data from queue and wipe?

Additionally - as per this thread Automatic wiping of task's stack - perhaps using the memory protection unit would be a better solution as if all your tasks run unprivileged then only the kernel would be able to access data stored within a queue.