日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

Java自带的性能监测工具之jstack

發(fā)布時間:2023/12/14 java 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java自带的性能监测工具之jstack 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

本文繼續(xù)介紹Java自帶的性能監(jiān)測工具,本文使用jstack?(Java Stack Trace)工具來玩~

使用jstack命令工具可以得到線程堆棧信息,根據(jù)這些線程堆棧信息,我們可以去檢查Java程序出現(xiàn)的問題,如檢測死鎖,并輸出死鎖的信息~的排查。

在使用jstack命令之前,可以先使用jstack -h來查看jstack命令相關(guān)的使用方法,包括有哪些參數(shù)等~

[root@dev18 ~]# jstack -h Usage:jstack [-l] <pid>(to connect to running process)jstack -F [-m] [-l] <pid>(to connect to a hung process)jstack [-m] [-l] <executable> <core>(to connect to a core file)jstack [-m] [-l] [server_id@]<remote server IP or hostname>(to connect to a remote debug server)Options:-F to force a thread dump. Use when jstack <pid> does not respond (process is hung)-m to print both java and native frames (mixed mode)-l long listing. Prints additional information about locks-h or -help to print this help message

jstack基本語法

jstack [option] <pid>

使用jstack -m <pid>打印java和native frames 的信息,如jstack -m 12905,這里的12905是Zookeeper服務(wù)的進(jìn)程ID~

[root@dev18 ~]# jstack -m 12905 Attaching to process ID 12905, please wait... Debugger attached successfully. Server compiler detected. JVM version is 24.71-b01 Deadlock Detection:No deadlocks found.----------------- 12908 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad07875a5 Unsafe_Park + 0x125 0x00007fcacc4b17f8 * sun.misc.Unsafe.park(boolean, long) bci:0 (Interpreted frame) 0x00007fcacc4a5058 * java.util.concurrent.locks.LockSupport.park(java.lang.Object) bci:14 line:186 (Interpreted frame) 0x00007fcacc4a5058 * java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt() bci:1 line:834 (Interpreted frame) 0x00007fcacc4a5350 * java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(int) bci:72 line:994 (Interpreted frame) 0x00007fcacc4a5058 * java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(int) bci:24 line:1303 (Interpreted frame) 0x00007fcacc4a5058 * java.util.concurrent.CountDownLatch.await() bci:5 line:236 (Interpreted frame) 0x00007fcacc4a5058 * org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(org.apache.zookeeper.server.ServerConfig) bci:134 line:122 (Interpreted frame) 0x00007fcacc4a5058 * org.apache.zookeeper.server.ZooKeeperServerMain.initializeAndRun(java.lang.String[]) bci:49 line:87 (Interpreted frame) 0x00007fcacc4a5058 * org.apache.zookeeper.server.ZooKeeperServerMain.main(java.lang.String[]) bci:10 line:53 (Interpreted frame) 0x00007fcacc4a5058 * org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(java.lang.String[]) bci:84 line:116 (Interpreted frame) 0x00007fcacc4a5058 * org.apache.zookeeper.server.quorum.QuorumPeerMain.main(java.lang.String[]) bci:10 line:78 (Interpreted frame) 0x00007fcacc49f4e7 <StubRoutines> 0x00007fcad040a085 _ZN9JavaCalls11call_helperEP9JavaValueP12methodHandleP17JavaCallArgumentsP6Thread + 0x365 0x00007fcad0408ae8 _ZN9JavaCalls4callEP9JavaValue12methodHandleP17JavaCallArgumentsP6Thread + 0x28 0x00007fcad0442a99 _ZL17jni_invoke_staticP7JNIEnv_P9JavaValueP8_jobject11JNICallTypeP10_jmethodIDP18JNI_ArgumentPusherP6Thread + 0x219 0x00007fcad044b6b2 jni_CallStaticVoidMethod + 0x162 0x00007fcad0c866d9 JavaMain + 0x7e9 ----------------- 12909 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad05eb5cf _ZN7Monitor5IWaitEP6Threadl + 0xef 0x00007fcad05ebd5e _ZN7Monitor4waitEblb + 0x22e 0x00007fcad035fcc3 _ZN13GCTaskManager8get_taskEj + 0x43 0x00007fcad0361388 _ZN12GCTaskThread3runEv + 0x188 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12910 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad05eb5cf _ZN7Monitor5IWaitEP6Threadl + 0xef 0x00007fcad05ebd5e _ZN7Monitor4waitEblb + 0x22e 0x00007fcad035fcc3 _ZN13GCTaskManager8get_taskEj + 0x43 0x00007fcad0361388 _ZN12GCTaskThread3runEv + 0x188 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12911 ----------------- 0x000000358d40ba0e __pthread_cond_timedwait + 0x13e 0x00007fcad05eb87e _ZN7Monitor5IWaitEP6Threadl + 0x39e 0x00007fcad05ebd5e _ZN7Monitor4waitEblb + 0x22e 0x00007fcad07b1ff9 _ZN8VMThread4loopEv + 0x339 0x00007fcad07b2300 _ZN8VMThread3runEv + 0x70 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12912 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad061860d _ZN13ObjectMonitor4waitElbP6Thread + 0x9bd 0x00007fcad0487578 JVM_MonitorWait + 0x168 0x00007fcacc52dec8 <Unknown compiled code> 0x00007fcacc4a5058 * java.lang.Object.wait() bci:2 line:503 (Interpreted frame) 0x00007fcacc4a5058 * java.lang.ref.Reference$ReferenceHandler.run() bci:46 line:133 (Interpreted frame) 0x00007fcacc49f4e7 <StubRoutines> 0x00007fcad040a085 _ZN9JavaCalls11call_helperEP9JavaValueP12methodHandleP17JavaCallArgumentsP6Thread + 0x365 0x00007fcad0408ae8 _ZN9JavaCalls4callEP9JavaValue12methodHandleP17JavaCallArgumentsP6Thread + 0x28 0x00007fcad0408db7 _ZN9JavaCalls12call_virtualEP9JavaValue11KlassHandleP6SymbolS4_P17JavaCallArgumentsP6Thread + 0x197 0x00007fcad0408ed7 _ZN9JavaCalls12call_virtualEP9JavaValue6Handle11KlassHandleP6SymbolS5_P6Thread + 0x47 0x00007fcad0485ef5 _ZL12thread_entryP10JavaThreadP6Thread + 0xe5 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12913 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad061860d _ZN13ObjectMonitor4waitElbP6Thread + 0x9bd 0x00007fcad0487578 JVM_MonitorWait + 0x168 0x00007fcacc52dec8 <Unknown compiled code> 0x00007fcacc4a5058 * java.lang.ref.ReferenceQueue.remove(long) bci:44 line:135 (Interpreted frame) 0x00007fcacc4a5233 * java.lang.ref.ReferenceQueue.remove() bci:2 line:151 (Interpreted frame) 0x00007fcacc4a5233 * java.lang.ref.Finalizer$FinalizerThread.run() bci:36 line:209 (Interpreted frame) 0x00007fcacc49f4e7 <StubRoutines> 0x00007fcad040a085 _ZN9JavaCalls11call_helperEP9JavaValueP12methodHandleP17JavaCallArgumentsP6Thread + 0x365 0x00007fcad0408ae8 _ZN9JavaCalls4callEP9JavaValue12methodHandleP17JavaCallArgumentsP6Thread + 0x28 0x00007fcad0408db7 _ZN9JavaCalls12call_virtualEP9JavaValue11KlassHandleP6SymbolS4_P17JavaCallArgumentsP6Thread + 0x197 0x00007fcad0408ed7 _ZN9JavaCalls12call_virtualEP9JavaValue6Handle11KlassHandleP6SymbolS5_P6Thread + 0x47 0x00007fcad0485ef5 _ZL12thread_entryP10JavaThreadP6Thread + 0xe5 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12914 ----------------- 0x000000358d40d9b0 sem_wait + 0x30 0x00007fcad0622365 _ZL19signal_thread_entryP10JavaThreadP6Thread + 0x95 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12915 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad05eb5cf _ZN7Monitor5IWaitEP6Threadl + 0xef 0x00007fcad05ebdd6 _ZN7Monitor4waitEblb + 0x2a6 0x00007fcad0254d88 _ZN12CompileQueue3getEv + 0x128 0x00007fcad0258e8a _ZN13CompileBroker20compiler_thread_loopEv + 0x13a 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12916 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad05eb5cf _ZN7Monitor5IWaitEP6Threadl + 0xef 0x00007fcad05ebdd6 _ZN7Monitor4waitEblb + 0x2a6 0x00007fcad0254d88 _ZN12CompileQueue3getEv + 0x128 0x00007fcad0258e8a _ZN13CompileBroker20compiler_thread_loopEv + 0x13a 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12917 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad05eb5cf _ZN7Monitor5IWaitEP6Threadl + 0xef 0x00007fcad05ebd5e _ZN7Monitor4waitEblb + 0x22e 0x00007fcad06b9f27 _ZN13ServiceThread20service_thread_entryEP10JavaThreadP6Thread + 0x197 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12918 ----------------- 0x000000358d0df143 __libc_poll + 0x53 0x00007fcac4827037 Java_java_net_PlainSocketImpl_socketAccept + 0x1e7 0x00007fcacc4b17f8 * java.net.PlainSocketImpl.socketAccept(java.net.SocketImpl) bci:0 (Interpreted frame) 0x00007fcacc4a5058 * java.net.AbstractPlainSocketImpl.accept(java.net.SocketImpl) bci:7 line:398 (Interpreted frame) 0x00007fcacc4a5058 * java.net.ServerSocket.implAccept(java.net.Socket) bci:60 line:530 (Interpreted frame) 0x00007fcacc4a5058 * java.net.ServerSocket.accept() bci:48 line:498 (Interpreted frame) 0x00007fcacc4a5233 * sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop() bci:55 line:388 (Interpreted frame) 0x00007fcacc4a5058 * sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run() bci:1 line:360 (Interpreted frame) 0x00007fcacc4a5706 * java.lang.Thread.run() bci:11 line:745 (Interpreted frame) 0x00007fcacc49f4e7 <StubRoutines> 0x00007fcad040a085 _ZN9JavaCalls11call_helperEP9JavaValueP12methodHandleP17JavaCallArgumentsP6Thread + 0x365 0x00007fcad0408ae8 _ZN9JavaCalls4callEP9JavaValue12methodHandleP17JavaCallArgumentsP6Thread + 0x28 0x00007fcad0408db7 _ZN9JavaCalls12call_virtualEP9JavaValue11KlassHandleP6SymbolS4_P17JavaCallArgumentsP6Thread + 0x197 0x00007fcad0408ed7 _ZN9JavaCalls12call_virtualEP9JavaValue6Handle11KlassHandleP6SymbolS5_P6Thread + 0x47 0x00007fcad0485ef5 _ZL12thread_entryP10JavaThreadP6Thread + 0xe5 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12919 ----------------- 0x000000358d40ba0e __pthread_cond_timedwait + 0x13e 0x00007fcad05eb87e _ZN7Monitor5IWaitEP6Threadl + 0x39e 0x00007fcad05ebd5e _ZN7Monitor4waitEblb + 0x22e 0x00007fcad075f951 _ZNK13WatcherThread5sleepEv + 0x71 0x00007fcad075fe6e _ZN13WatcherThread3runEv + 0x5e 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12920 ----------------- 0x000000358d0e8f63 __GI_epoll_wait + 0x33 0x00007fcacc5233d2 <Unknown compiled code> ----------------- 12921 ----------------- 0x000000358d40ba0e __pthread_cond_timedwait + 0x13e 0x00007fcad0617eab _ZN13ObjectMonitor4waitElbP6Thread + 0x25b 0x00007fcad0487578 JVM_MonitorWait + 0x168 0x00007fcacc52dec8 <Unknown compiled code> ----------------- 12922 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad07875a5 Unsafe_Park + 0x125 0x00007fcacc545e4a <Unknown compiled code> ----------------- 12923 ----------------- 0x000000358d40b63c __pthread_cond_wait + 0xcc 0x00007fcad07875a5 Unsafe_Park + 0x125 0x00007fcacc545e4a <Unknown compiled code> ----------------- 17907 ----------------- 0x000000358d40eadd __libc_accept + 0x2d 0x00007fcad010972b _ZN14AttachListener7dequeueEv + 0x7b 0x00007fcad010827a _ZL28attach_listener_thread_entryP10JavaThreadP6Thread + 0x19a 0x00007fcad076392f _ZN10JavaThread17thread_main_innerEv + 0xdf 0x00007fcad0763a35 _ZN10JavaThread3runEv + 0xf5 0x00007fcad062a4b8 _ZL10java_startP6Thread + 0x108 ----------------- 12905 ----------------- 0x000000358d4082ad pthread_join + 0x10d [root@dev18 ~]#

?

接下來,我們就來看一下jstack查看死鎖的示例~

使用jstack查看死鎖

死鎖Java代碼

public class Deadlock {static class Friend {private final String name;public Friend(String name) {this.name = name;}public String getName() {return this.name;}public synchronized void bow(Friend bower) {System.out.format("%s: %s"+ " has bowed to me!%n", this.name, bower.getName());bower.bowBack(this);}public synchronized void bowBack(Friend bower) {System.out.format("%s: %s"+ " has bowed back to me!%n",this.name, bower.getName());}}public static void main(String[] args) {final Friend alphonse =new Friend("Alphonse");final Friend gaston =new Friend("Gaston");new Thread(new Runnable() {public void run() { alphonse.bow(gaston); }}).start();new Thread(new Runnable() {public void run() { gaston.bow(alphonse); }}).start();} }

查看死鎖進(jìn)程

在Eclipse上運行上述Deadlock程序,然后使用jps -l查看死鎖進(jìn)程ID~

C:\Users\wangmengjun>jps -l 5752 sun.tools.jps.Jps 16724 F:\JavaDeveloper\eclipse\\plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar 11172 Deadlock 17868

使用jstack檢測死鎖原因

使用jps -l查看死鎖進(jìn)程ID,我們得知死鎖程序的PID為11172~

接下來,我們就使用jstack -l 11172檢測死鎖原因~

C:\Users\wangmengjun>jstack -l 11172 2017-03-22 19:06:29 Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.79-b02 mixed mode):"DestroyJavaVM" prio=6 tid=0x0000000002a72800 nid=0x3d8c waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLELocked ownable synchronizers:- None"Thread-1" prio=6 tid=0x0000000011373000 nid=0x46c4 waiting for monitor entry [0x00000000118df000]java.lang.Thread.State: BLOCKED (on object monitor)at Deadlock$Friend.bowBack(Deadlock.java:19)- waiting to lock <0x00000007ab134018> (a Deadlock$Friend)at Deadlock$Friend.bow(Deadlock.java:16)- locked <0x00000007ab134060> (a Deadlock$Friend)at Deadlock$2.run(Deadlock.java:34)at java.lang.Thread.run(Unknown Source)Locked ownable synchronizers:- None"Thread-0" prio=6 tid=0x000000000f9c7800 nid=0x2f94 waiting for monitor entry [0x00000000117df000]java.lang.Thread.State: BLOCKED (on object monitor)at Deadlock$Friend.bowBack(Deadlock.java:19)- waiting to lock <0x00000007ab134060> (a Deadlock$Friend)at Deadlock$Friend.bow(Deadlock.java:16)- locked <0x00000007ab134018> (a Deadlock$Friend)at Deadlock$1.run(Deadlock.java:31)at java.lang.Thread.run(Unknown Source)Locked ownable synchronizers:- None"Service Thread" daemon prio=6 tid=0x000000000f987000 nid=0x3480 runnable [0x0000000000000000]java.lang.Thread.State: RUNNABLELocked ownable synchronizers:- None"C2 CompilerThread1" daemon prio=10 tid=0x000000000f978000 nid=0x4468 waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLELocked ownable synchronizers:- None"C2 CompilerThread0" daemon prio=10 tid=0x000000000f972800 nid=0x4558 waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLELocked ownable synchronizers:- None"Attach Listener" daemon prio=10 tid=0x000000000f971800 nid=0x4ba4 waiting on condition [0x0000000000000000]java.lang.Thread.State: RUNNABLELocked ownable synchronizers:- None"Signal Dispatcher" daemon prio=10 tid=0x000000000f96e800 nid=0x4860 runnable [0x0000000000000000]java.lang.Thread.State: RUNNABLELocked ownable synchronizers:- None"Finalizer" daemon prio=8 tid=0x000000000f921000 nid=0x4964 in Object.wait() [0x0000000010cdf000]java.lang.Thread.State: WAITING (on object monitor)at java.lang.Object.wait(Native Method)- waiting on <0x00000007ab084858> (a java.lang.ref.ReferenceQueue$Lock)at java.lang.ref.ReferenceQueue.remove(Unknown Source)- locked <0x00000007ab084858> (a java.lang.ref.ReferenceQueue$Lock)at java.lang.ref.ReferenceQueue.remove(Unknown Source)at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)Locked ownable synchronizers:- None"Reference Handler" daemon prio=10 tid=0x000000000f917800 nid=0x30bc in Object.wait() [0x0000000010bdf000]java.lang.Thread.State: WAITING (on object monitor)at java.lang.Object.wait(Native Method)- waiting on <0x00000007ab084470> (a java.lang.ref.Reference$Lock)at java.lang.Object.wait(Object.java:503)at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)- locked <0x00000007ab084470> (a java.lang.ref.Reference$Lock)Locked ownable synchronizers:- None"VM Thread" prio=10 tid=0x000000000f912000 nid=0x3330 runnable"GC task thread#0 (ParallelGC)" prio=6 tid=0x0000000002a88800 nid=0x4870 runnable"GC task thread#1 (ParallelGC)" prio=6 tid=0x0000000002a8a000 nid=0x4324 runnable"GC task thread#2 (ParallelGC)" prio=6 tid=0x0000000002a8c000 nid=0x41d4 runnable"GC task thread#3 (ParallelGC)" prio=6 tid=0x0000000002a8d800 nid=0x26d4 runnable"VM Periodic Task Thread" prio=10 tid=0x000000000f991000 nid=0x17a4 waiting on conditionJNI global references: 122Found one Java-level deadlock: ============================= "Thread-1":waiting to lock monitor 0x000000000f91efa8 (object 0x00000007ab134018, a Deadlock$Friend),which is held by "Thread-0" "Thread-0":waiting to lock monitor 0x000000000f920398 (object 0x00000007ab134060, a Deadlock$Friend),which is held by "Thread-1"Java stack information for the threads listed above: =================================================== "Thread-1":at Deadlock$Friend.bowBack(Deadlock.java:19)- waiting to lock <0x00000007ab134018> (a Deadlock$Friend)at Deadlock$Friend.bow(Deadlock.java:16)- locked <0x00000007ab134060> (a Deadlock$Friend)at Deadlock$2.run(Deadlock.java:34)at java.lang.Thread.run(Unknown Source) "Thread-0":at Deadlock$Friend.bowBack(Deadlock.java:19)- waiting to lock <0x00000007ab134060> (a Deadlock$Friend)at Deadlock$Friend.bow(Deadlock.java:16)- locked <0x00000007ab134018> (a Deadlock$Friend)at Deadlock$1.run(Deadlock.java:31)at java.lang.Thread.run(Unknown Source)Found 1 deadlock.

從上述輸出的信息中可以看出死鎖的信息~?

轉(zhuǎn)載于:https://my.oschina.net/wangmengjun/blog/865125

總結(jié)

以上是生活随笔為你收集整理的Java自带的性能监测工具之jstack的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 色欲亚洲Av无码精品天堂 | 国产真实交换夫妇视频 | 精品视频在线一区二区 | 韩国短剧在线观看 | 亚洲高清福利 | 国产又粗又长视频 | 毛片一二三区 | 男人狂揉女人下部视频 | 蜜臀av一区二区 | 动漫裸体无遮挡 | 黄频在线免费观看 | 男人深夜影院 | 色婷婷久久一区二区三区麻豆 | 偷拍欧美亚洲 | 国产日韩专区 | 在线欧美a | 色噜噜狠狠一区二区三区果冻 | 91香蕉国产| 简单av网| 麻豆传媒网址 | 欧美极品jizzhd欧美仙踪林 | 国产亚洲毛片 | 一级片视频免费观看 | 同性色老头性xxxx老头 | 爽爽影院在线免费观看 | 不卡在线视频 | 国产精品入口夜色视频大尺度 | 青娱乐国产 | 中日韩精品视频在线观看 | 日韩国产欧美精品 | 日韩夜夜 | 亚洲男女激情 | 欧美在线观看一区 | 青青草综合视频 | 亚洲第一自拍 | 91色在线视频 | 国产传媒在线播放 | 国产在线一区二区三区四区 | 正在播放老肥熟妇露脸 | 91蜜臀精品国产自偷在线 | 国产性生活| 精品久久久免费 | 久久久久夜 | 综合网久久 | 国模小丫大尺度啪啪人体 | 成人福利在线视频 | 六月婷婷在线观看 | 91娇羞白丝| 日韩欧美国产综合 | 欧美精品亚洲精品 | 男人天堂资源 | 你懂的在线网站 | 夜夜操免费视频 | 五月婷婷综 | 伦伦影院午夜理论片 | 成人看片在线观看 | 人妻熟女一区二区aⅴ水野 91在线观看视频 | 亚洲国产成人精品久久久 | 蜜桃成人网 | 国产一区91精品张津瑜 | 午夜久久久精品 | 中出亚洲 | 国产91一区二区三区 | 成人午夜激情网 | 九九热精品视频在线观看 | 超碰人人搞 | 色播网址 | 少女视频的播放方法 | 久久久久久久无码 | 中文字幕一区二区三区5566 | 亚洲av永久无码精品三区在线 | 黄色国产一级 | 国产精品白丝喷水在线观看 | 网站毛片 | 亚洲欧美综合视频 | 少妇大叫太粗太大爽一区二区 | 影音先锋在线中文字幕 | 麻豆国产原创 | 亚洲高清视频在线 | 大片视频免费观看视频 | 日本精品三级 | 8x8ⅹ成人永久免费视频 | 国产精品激情偷乱一区二区∴ | 永久免费AV无码网站韩国毛片 | av免费网站 | 国产一级特黄aaa大片 | 黑人性视频 | 成人黄色在线网站 | 欧美国产精品一二三 | 人人射 | 天堂网wwww | 久热欧美| 国产地址| 伦av综合一区 | 久色成人 | av在线精品| 国偷自产视频一区二区久 | 人妻少妇被猛烈进入中文字幕 | av免费网 |