@Override
    public V take() throws InterruptedException {
        return poll(0, TimeUnit.MILLISECONDS);
    }
@Test
    public void testTake() throws InterruptedException {
        RTransferQueue<Integer> queue1 = redisson.getTransferQueue("queue");
        Executors.newSingleThreadScheduledExecutor().schedule(() -> {
            RTransferQueue<Integer> queue = redisson.getTransferQueue("queue");
            try {
                queue.put(3);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }, 10, TimeUnit.SECONDS);

        long s = System.currentTimeMillis();
        int l = queue1.take();

        Assertions.assertEquals(3, l);
        Assertions.assertTrue(System.currentTimeMillis() - s > 9000);
    }