Hi All:

I am wondering how to send the HTTP/2 requests at the same time. According
to the jetty example code for  HTTP/2 client code. They use the phaser to
listen the frames. when I use a for loop, for example

for(int i=0;i<childpath.size();i++)

        {



        MetaData.Request metaData = new MetaData.Request("GET", new HttpURI(
"https://"+host+":"+port+"/"+childpath.get(i)), HttpVersion.HTTP_2,
requestFields);

       PriorityFrame tempPriorityFrame = null;



        HeadersFrame headersFrame = new HeadersFrame(0, metaData,
tempPriorityFrame, true);

        final Phaser phaser = new Phaser(2);



        session.newStream(headersFrame, new Promise.Adapter<Stream>(), new
Stream.Listener.Adapter()

        {

            @Override

            public void onHeaders(Stream stream, HeadersFrame frame)

            {

                System.err.println(frame);

                if (frame.isEndStream())

                    phaser.arrive();

            }


            @Override

            public void onData(Stream stream, DataFrame frame, Callback
callback)

            {

                System.err.println(frame);

                callback.succeeded();

                if (frame.isEndStream())

                    phaser.arrive();

            }


            @Override

            public Stream.Listener onPush(Stream stream, PushPromiseFrame
frame)

            {

                System.err.println(frame);

                phaser.register();

                return this;

            }

        });



              phaser.awaitAdvanceInterruptibly(phaser.arrive(), 5, TimeUnit.
SECONDS);


    }



I found only when the first frame's response being heared and a dataframe
with end=true being heared then the second request can be made.

Does anyone know how to send the request at the same time without waiting
for the former request's response. Many Thanks

Best Regards

Muhui Jiang
_______________________________________________
jetty-users mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to