Future wireless networks will support the growing demands of heterogeneous services. Dynamic resource allocation is essential to guarantee quality of service (QoS) and enhance the network performance. We propose a novel resource allocation framework to cope with the time-varying channel conditions, co-channel interferences, and different QoS requirements in various kinds of services. We define a QoS measurement for delay sensitive applications. We introduce a credit system, where users have their autonomy to decide when and how to use their resources, and users can borrow or lend resources from the system. We also develop a simple feedback mechanism to report the system with the users' QoS satisfaction levels and channel conditions. Then the system will adapt its resource allocation strategy according to the users' feedbacks to favor the users with the bad QoS satisfaction levels or the good channels. We develop adaptive algorithms at both the user and system levels. From simulations, the proposed algorithms efficiently allocate the resources to different types of users. The users' delay constraints are satisfied and the links can survive under a long period of bad channels.