Explain threads in details?, Operating System

What are threads?

A thread - sometimes called as an implementation context or a lightweight process - is a single sequential flow of control within a program. We use threads to separate tasks. While we run one of the applets it creates a thread that performs the operation. Every thread is a sequential flow of control within the same program (the browser). Every operation runs independently from the others but at the same time.

A thread is alike to the sequential programs described previously. A single thread as well has a beginning and a sequence and an end. At any given point of time during the runtime of the thread there is a single point of execution. Though, a thread itself isn't a program; a thread can't run on its own. Relatively it runs within a program.

A thread is the single sequential flow of control within a program. Threads perform two or more tasks at once. The real excitement surrounding threads isn't about a single sequential thread. Relatively, it is about the use of multiple threads running at the same time and performing different tasks in a single program.

A Web browser is an instance of a multithreaded application. Within a usual browser, you are able to scroll a page while it is downloading an image or an applet, play sound and animation concurrently and print a page in the background while you download a new page or watch three sorting algorithms race to the finish.

Some texts call a thread as a lightweight process. A thread is alike to a real process in that both have a single sequential flow of control. Though, a thread is considered as a lightweight for the reason that it runs within the context of a full-blown program and takes advantage of the resources allocated for that program and the program's environment.

The same as a sequential flow of control, a thread ought to carve out some of its own resources within a running program. For instance, a thread should have its own execution stack and program counter. The code running inside the thread works merely within that context. Some other texts use implementation context as a synonym for thread.


Result of calling the start method on a Thread object:

 

1. The thread goes into the Runnable position and the run method is invoked.

The two ways you are able to provide the implementation for a thread's run method:

 

1. Create a Thread subclass that dominates the run method.

2. Write a class that executes the Runnable interface and the run method

Posted Date: 6/22/2013 7:06:14 AM | Location : United States






Your posts are moderated
Related Questions
COMPARISON OF DISK SCHEDULING ALGORITHMS Name      Description                  Remarks      (Selection according to requestor)   RSS        Random scheduling     fo

What is the use of fork and exec system calls? Fork is a system call by which a latest process is created. Exec is also a system call, which is used after a fork by one of the

Basic concepts When a process is to be changed in, the pager guesses which pages will be used before the process is changed out again. Instead of swapping in a entire process,

ADVANTAGES OF MICROFERNEL IN YSTEM DESIGN?

What is an operating system and what are the different types of operating systems? Operating System An Operating System or OS is a software program that allows the compute

When we download a movie from the Internet, we don't care about, say, packet sizes. However, even ifwe are not aware of howlow-level details of networks are implemented, our data i

Now, let us discuss two related algorithms for deciding which pages to evict. The clock algorithm is one of the most popular choices. It works by keeping frames in a circular struc

The physical memory acts as a cache backed by the disk. When the physical memory is full, and we want to read in another page from disk, we have to evict a page from physical memor

File Organization     * Sequential     * Direct     * Indexed A file still if it is stored on a magnetic disk or CD-ROM disk may perhaps have a sequential file organiz

Define race condition. When various process access and manipulate similar data concurrently, then the outcome of the execution depends on certain order in which the access take