1d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cuipackage com.example.simpleperf.simpleperfexamplewithnative; 2bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui 3bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cuiimport android.support.v7.app.AppCompatActivity; 4bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cuiimport android.os.Bundle; 5bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui 6d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cuipublic class MixActivity extends AppCompatActivity { 7d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui 8d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui static { 9d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui System.loadLibrary("native-lib"); 10d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui } 11bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui 12bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui @Override 13bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui protected void onCreate(Bundle savedInstanceState) { 14bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui super.onCreate(savedInstanceState); 15d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui setContentView(R.layout.activity_mix); 16bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui createBusyThread(); 17bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui } 18bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui 19bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui void createBusyThread() { 20bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui new Thread(new Runnable() { 21bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui volatile int i = 0; 22bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui 23bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui @Override 24bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui public void run() { 25bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui while (true) { 26bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui i = callFunction(i); 27bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui } 28bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui } 29bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui 30d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui }, "BusyThread").start(); 31bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui } 32d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui 33d97a532cb291aa8c5b5b1f000052c581faa50f29Yabin Cui private native int callFunction(int a); 34bfe1a73b29661a79b3d58300bfe4ce539a5fee44Yabin Cui} 35