কম্পিউটার

অ্যান্ড্রয়েডে একটি থ্রেডের জন্য অগ্রাধিকার সেট কিভাবে ব্যবহার করবেন?


একটি উদাহরণে যাওয়ার আগে, থ্রেড কী তা আমাদের জানা উচিত। একটি থ্রেড একটি লাইটওয়েট সাব-প্রসেস, এটি UI-তে বাধা ছাড়াই ব্যাকগ্রাউন্ড অপারেশন করতে যাচ্ছে। এই উদাহরণটি দেখায় যে কীভাবে ব্যবহার করবেন অ্যান্ড্রয়েডে একটি থ্রেডের জন্য অগ্রাধিকার সেট করুন৷

ধাপ 1 − অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে সমস্ত প্রয়োজনীয় বিবরণ পূরণ করুন৷

ধাপ 2 − res/layout/activity_main.xml-এ নিম্নলিখিত কোড যোগ করুন।

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
   xmlns:tools="https://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical"
   android:gravity="center_horizontal"
   android:layout_marginTop="100dp"
   tools:context=".MainActivity">
   <EditText
      android:id="@+id/edit_query"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:hint="Enter string" />
   <Button
      android:id="@+id/click"
      android:layout_marginTop="50dp"
      style="@style/Base.TextAppearance.AppCompat.Widget.Button.Borderless.Colored"
      android:layout_width="wrap_content"
      android:background="#c1c1c1"
      android:textColor="#FFF"
      android:layout_height="wrap_content"
      android:text="Button" />
   <TextView
      android:id="@+id/text"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content" />
</LinearLayout>

উপরের কোডে, আমরা edittext এবং textview নিয়েছি। ব্যবহারকারী যখন এডিটটেক্সটে কিছু টেক্সট এন্টার করেন, তখন এটি 5000ms পর্যন্ত অপেক্ষা করবে এবং থ্রেড নামের সাথে টেক্সটভিউ আপডেট করবে।

ধাপ 3 − src/MainActivity.java

-এ নিম্নলিখিত কোড যোগ করুন
package com.example.myapplication;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
   EditText edit_query;
   TextView textView;
   boolean twice = false;
   Thread t = null;

   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      edit_query = findViewById(R.id.edit_query);
      textView = findViewById(R.id.text);
      findViewById(R.id.click).setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            runthread();
         }
      });
   }

   private void runthread() {
      twice = true;
      if (twice) {
         final String s1 = edit_query.getText().toString();
         t = new Thread(new Runnable() {
            @Override
            public void run() {
               runOnUiThread(new Runnable() {
                  @Override
                  public void run() {
                     textView.setText(t.getName());
                     try {
                        Thread.sleep(500);
                        twice = false;
                     } catch (InterruptedException e) {
                        e.printStackTrace();
                     }
                  }
               });
            }
         });
         t.start();
         t.setName(s1);
         t.setPriority(Thread.MAX_PRIORITY);
      }
   }
}

আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করা যাক. আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালাতে, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং টুলবার থেকে রান আইকনে ক্লিক করুন। একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপরে আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে -

অ্যান্ড্রয়েডে একটি থ্রেডের জন্য অগ্রাধিকার সেট কিভাবে ব্যবহার করবেন?

উপরের ফলাফলে, সম্পাদনা টেক্সটে কিছু টেক্সট লিখুন এবং বোতামে ক্লিক করুন, এটি থ্রেডে ডেটা যুক্ত করবে এবং থ্রেড থেকে ডেটা নেম মেথড হিসাবে গ্রহণ করবে এবং সর্বোচ্চ থ্রেড অগ্রাধিকার সহ টেক্সটভিউতে যুক্ত করবে।


  1. কিভাবে আমরা একটি Android EditText প্রোগ্রামের জন্য ইনপুট প্রকার সেট করব?

  2. অ্যান্ড্রয়েডে একটি AsyncTask এর জন্য একটি টাইমআউট কীভাবে সেট করবেন?

  3. আউটলুকে একটি ইমেলের জন্য অগ্রাধিকার কিভাবে উচ্চে সেট করবেন

  4. এন্ড্রয়েড অ্যাপের জন্য Outlook এ ইমেল কিভাবে সেট আপ করবেন